我正在尝试捕获并重新格式化(隐藏信息)在cxf webservice调用中抛出的camel中的异常。 ThrowException ......那我应该扔什么。
这不起作用,因为转换不起作用(当然)。什么是最好的方法?
<camel:onException>
<camel:exception>org.apache.cxf.binding.soap.SoapFault</camel:exception>
<camel:redeliveryPolicy maximumRedeliveries="2" delay="5000"/>
<camel:handled>
<camel:constant>true</camel:constant>
</camel:handled>
<camel:transform>
<camel:simple>Cannot process this message. Retry later. </camel:simple>
</camel:transform>
</camel:onException>
<camel:route trace="false" id="LEFIIncoming">
<camel:from uri="cxf:bean:PostSpecIn" />
<camel:to uri="cxf:bean:PostSpecOut" />
</camel:route>
答案 0 :(得分:1)
您需要将响应消息转换为CXF Web服务期望/支持的响应类型。所以从“cxf:bean:PostSpecIn”查看WSDL,并返回SOAP Fault作为响应,或者out消息支持的一些响应类型。