0

apache cxf を使用して開発された残りの API モジュールがあります。Spring 統合コンポーネントを同じモジュールで実行したいと考えています。この機能は単純に毎晩深夜にファイルをポーリングし、いくつかのディレクトリにコピーし、いくつかの処理を行います。spring-integrationを別のモジュールで実装する必要があるかどうか、または同じ API モジュールで実装しても問題ないかどうかを知る必要があるだけです。春の統合プロセスのために、残りの API サービス呼び出しが中断されることは望ましくありません。

4

1 に答える 1

1

現在の API サービス呼び出しに影響しないため、同じモジュールを使用できます。Spring には、提供されたサーブレット マッピングに従ってリクエストを処理するディスパッチャー サーブレット エントリがあるため、API リクエストを処理するために、CXF サーブレットから /services へのマッピングをわずかに変更しました。

web.xml の Dispatcher Servlet エントリ。

  <web-app id="Expertwebindia" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
        <display-name>Spring MVC Application</display-name>
        <servlet>
        <servlet-name>spring</servlet-name>
        <servlet-class>
        org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>/</url-pattern>
        </servlet-mapping>
        </web-app>

API 呼び出しを処理するために、Apache CXF の次のサーブレット エントリを追加します。

 <servlet>
           <servlet-name>CXFServlet</servlet-name>
           <display-name>CXF Servlet</display-name>
        <servlet-class>
            org.apache.cxf.transport.servlet.CXFServlet
        </servlet-class>
        <load-on-startup>2</load-on-startup>
    </servlet>

<servlet-mapping>
    <servlet-name>CXFServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
</servlet-mapping>

JAX-WS Web サービスの詳細については、こちらをご覧ください

于 2016-02-10T06:18:52.553 に答える