Web サービスを記述する WSDL ファイルがあります。ただし、まだ実装はありませんが、同じ応答を何度も返すようにハードコーディングされた SoapUI でモック サービスを作成しました。
Camel がディスクから Web サービスに SOAP リクエストを送信し、そのレスポンスを別のファイルに書き込むようにします。ルートは次のようになると考えていました。
from(file:data/input/soaprequest)
.to(wsendpoint)
from(wsendpoint)
.to(file:data/input/soapresponse)
そして、両方をラクダのコンテキストに追加しましたが、それが正しい方法かどうかはわかりませんが、正しい方法であっても、webserviceendpoint の設定にまだ苦労しています。私はSpring XMLを使用できないので、これは私が持っているものです:
CxfEndpoint wsendpoint = new CxfEndpoint();
wsendpoint.setAddress("http://localhost:9001/HelloWorld");
wsendpoint.setWsdlURL("http://localhost:9001/HelloWorld?WSDL");
wsendpoint.setServiceClass("com.generated.HelloWorld");
wsendpoint.setCamelContext(camelcontext);
そして、上記のように wsendpoint をルートに渡します。しかし、何も起こっていません。アプリケーションは決して停止せず、出力フォルダーに応答を投稿しません。
INFO: Setting the server's publish address to be http://localhost:9001/HelloWorld
また、アプリケーションがまだ実行されている間に SoapUI からリクエストを送信しようとしましたが、アプリケーションで何も変更されず、SoapUI で 404 エラーが発生しました