我正在使用Mule ESB公開CXF服務,我需要將請求傳遞給條件路由器。我看到的大多數示例都將響應傳遞給條件路由器。將Mule ESB服務的請求傳遞給條件路由器
如何在不更改wsdl的情況下向前傳遞請求?
我正在使用Mule ESB公開CXF服務,我需要將請求傳遞給條件路由器。我看到的大多數示例都將響應傳遞給條件路由器。將Mule ESB服務的請求傳遞給條件路由器
如何在不更改wsdl的情況下向前傳遞請求?
我所用騾子ESB 3
<pattern:web-service-proxy name="theProxy"
outboundAddress="vm://theProxyFlow"
wsdlFile="classpath:wsdl/MyWsWSDL.wsdl" inboundAddress="${inbound.url}" transformer-refs="RequestToString">
</pattern:web-service-proxy>
,並提供了網絡服務的代理模式的VM端點實際上沒有使用XPath表達式條件的路由。但是我必須編寫一個「RequestToString」自定義轉換器,以便我可以將xpath應用於傳入的SOAP有效內容。
我用在變壓器下面的轉型 -
if (src instanceof InputStream)
{
InputStream input = (InputStream) src;
try
{
reqAsString = IOUtils.toString(input);
}
finally
{
IOUtils.closeQuietly(input);
}
}
當實現Web服務組件後,OP會給予更高的精度
放置一個choice routing message processor我會修改這個答案。
感謝您的回答。爲了完整性目的,我記錄了我在答案中做了什麼(如果有更好的方法,請告訴我)。 – Pushkar 2012-01-19 10:30:17
很酷。您應該能夠使用標準的對象到字符串轉換器來代替您的自定義RequestToString。否則,這是相當不錯的:) – 2012-01-19 16:42:09
這真的很難理解你在找什麼:你有,你可以共享配置的任何一點嗎?這會幫助你。 – 2011-12-29 03:06:02