。我通過駱駝航線調用示例SOAP,WS我只是想從服務電話和從服務呼叫不成功執行成功執行後,HTTP狀態代碼(響應碼200一樣OK)通過Webservice處理異常在Camel路由中jboss Fuse
2.我m通過駱駝路由調用示例REST-WS我只需要在服務調用成功執行後以及從服務調用執行失敗後的http狀態代碼(響應代碼爲200 OK)在這兩種情況下,我們的業務邏輯都會被觸發。 我已經試過
//Camel-context <camelContext xmlns="http://camel.apache.org/schema/spring" handleFault="true">
<onException>
<exception>org.apache.cxf.binding.soap.SoapFault</exception>
<exception>java.lang.Exception</exception>
<handled><constant>true</constant></handled>
<bean ref="exceptionHandlerforWS"/>
</onException> <route>
<from uri="cxf:bean:ToStartRoute"/>
<bean ref="InputforWS"/>
<to uri="cxf:bean:factorial_WS"/>
<bean ref="OutputFromWS"/>
</route>
</camelContext>
// exceptionHandlerforWS Exception cause = exchange.getProperty(Exchange.EXCEPTION_CAUGHT, Exception.class);
if(cause.getMessage().contains("404")) { System.out.println("getting 404 from Service"); }
問題陳述:
我們究竟應該接受來自Web服務調用成功或失敗的情況下,HTTP狀態代碼?我試過甚至System.out.println((Exchange.HTTP_RESPONSE_CODE)); 但打印靜態字符串「CamelHTTPResponseCode」
2.我們要區分成功的網絡服務執行和失敗的Web服務的執行,我們究竟如何能做到這一點?
3.我該如何處理駱駝路線中的SoapFault?
嗨克勞斯,我正在試圖處理SoapFaults我自己,我不能讓它開始工作。我試着設置handleFault,然後使用onException-clause。但是,嘗試啓動該捆綁時,我收到了一個ClassNotFoundException。我正在使用Blueprint btw配置我的路線。我希望你想擴大你目前的答案。 – noMad17
我試着設置'handleFault = true',然後使用onException-clause和Do try Catch塊。但如果有任何響應,則不會獲取HTTP_RESPONSE_CODE。 –