我還是Spring Integration的新手,我幾乎沒有問題。Spring集成調用Web服務
我有在Tomcat服務器WSDL部署服務。
我希望將彈簧集成流的參數發送到該服務,並接收 響應,以便在流中執行下一步操作。
我應該使用出站WS網關這樣做對嗎? 以及如何配置xml來做到這一點?
我試過溫度的例子,但仍然不明白它。
謝謝。
////////////////////////////////////////////// /////////////////
這裏是我的配置:
<int:gateway service-interface="com.app.service.IRequester" id="IRequester"
default-request-channel="requestChannel"
default-reply-channel="responseChannel"
error-channel="errorChannel" >
</int:gateway>
<int:service-activator input-channel="requestChannel" id="bu1"
ref="BU1" method="bu1Method"
output-channel="buChannel">
</int:service-activator>
<int:service-activator input-channel="errorChannel"
ref="handlerError" method="errorReturnToGateway"
output-channel="responseChannel" >
</int:service-activator>
<int:router id="routingChannel" input-channel="buChannel" ref="RoutingChannel" method="routingChannel">
<int:mapping value="firstChannel" channel="channelFirst" />
<int:mapping value="otherChannel" channel="channelOther" />
</int:router>
<int:service-activator id="firstBU" input-channel="channelFirst"
ref="FirstBU" method="doSomething" output-channel="responseChannel">
</int:service-activator>
<int:service-activator id="otherBU" input-channel="channelOther"
ref="OtherBU" method="doSomething" output-channel="responseChannel">
</int:service-activator>
我需要從兩個firstBU和otherBU激活更改輸出通道來調用Web服務,發送一個paremeter到該服務(paremeter類型是Hashmap)並接收相同類型的響應。
我不知道如何通過使用ws:outbound-gateway調用Web服務。因爲我只知道使用java方法通過生成客戶端java類來調用Web服務,並且可能會在方法doSomething中調用服務。
就我而言,你認爲哪種方式更好? 我還想知道如何通過使用ws:outbound-gateway解決此問題。
謝謝。
謝謝你的迴應。我在主題帖子中完成了更新配置。 – user3205788
如果你沒有足夠的時間,可以繼續進行代碼生成並使用通用的''。否則,你需要研究什麼是'Contract First'以及Spring WS如何實現它。 Spring Integration WS模塊完全基於Spring WS項目。 –
再次感謝你,代碼生成方式工作正常,我也會按照你的建議學習Spring WS。 – user3205788