第324章 Spring WebService コンポーネント
Camel バージョン 2.6 以降で利用可能
Camel WebService の camel-spring-ws
コンポーネントは、Red Hat JBoss Enterprise Application Platform (JBoss EAP) コンテナーではサポートされ ていません。JBoss EAP コンテナーに JAX-WS エンドポイントを実装する必要がある場合、推奨される方法は、JBoss EAP コンテナーに組み込まれた webservice
サブシステムを使用することです。このアプローチにより、エンタープライズレベルのサービス品質 (管理、セキュリティーなどを含む) が自動的に提供されます。その後、JAX-WS エンドポイントを Camel ルートと統合する必要がある場合は、最初のペイロード処理の後に、結果の EndpointImpl
Bean を Camel ルートに渡すことができます。
spring-ws: コンポーネントを使用すると、Spring Web Services と統合できます。Web サービスにアクセスするための クライアント 側のサポートと、独自のコントラクト優先の Web サービスを作成するための サーバー 側のサポートの両方を提供します。
Maven ユーザーは、このコンポーネントの pom.xml
に以下の依存関係を追加する必要があります。
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-spring-ws</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>
情報:*依存関係* Camel 2.8 の時点で、このコンポーネントには Spring-WS 2.0.x が同梱されており、(Camel の残りの部分と同様に) Spring 3.0.x が必要です。以前の Camel バージョンには、Spring 2.5.x および 3.0.x と互換性のある Spring-WS 1.5.9 が同梱されていました。Spring 2.5.x で以前のバージョンの camel-spring-ws
を実行するには、Spring 2.5.x から spring-webmvc
モジュールを追加する必要があります。Spring 3.0.x で Spring-WS 1.5.9 を実行するには、Spring 3.0.x から OXM モジュールを除外する必要があります。このモジュールは Spring-WS 1.5.9 にも含まれているためです (この投稿を 参照)。
324.1. URI 形式
このコンポーネントの URI スキームは次のとおりです。
spring-ws:[mapping-type:]address[?options]
Web サービスを公開するには、マッピングタイプ を次のいずれかに設定する必要があります。
マッピングタイプ | 説明 |
---|---|
| メッセージに含まれるルート要素の修飾名に基づいて Web サービスリクエストをマップするオプションを提供します。 |
| メッセージのヘッダーで指定された SOAP アクションに基づいて Web サービスリクエストをマップするために使用されます。 |
| 特定の URI を対象とする Web サービスリクエストをマップする場合。 |
|
入力メッセージに対する XPath |
|
|
コンシューマーとして、アドレス には指定されたマッピングタイプ (SOAP アクション、XPath 式など) に関連する値が含まれている必要があります。プロデューサとして、アドレスは呼び出し先の Web サービスの URI に設定する必要があります。
URI には、?option=value&option=value&…
の形式でクエリー options を追加できます。