我面临一种情况,我们不能使用模式来验证传入的请求(基本上模式存在,但它接受请求中的任何字符串,wsdl 设计人员有自己的理由这样做以接受来自不同来源和灵活性的请求)。但是当收到请求时,我验证请求包装器的子元素是我们所期望的(为此使用 XPath)。现在,如果子元素不是预期的,我想抛出代码Soap Fault
,Client
并且可能包含模式验证失败的错误消息,请求不包含有效元素。
我正在使用 Mule 3.3 并XPath
在元素中进行验证<choice>
,我想在<otherwise>
块中抛出异常。
- 有没有办法
Soap Fault
手动投入骡流和 - 如何添加自定义故障字符串。我不确定是否会解决这个目的,因为
outInterceptor
我没有使用.schemaValidation
<cxf:proxyService>
这是我的流程的一部分
<http:inbound-endpoint address="${service.address}" exchange-pattern="request-response">
<cxf:proxy-service wsdlLocation="classpath:service.wsdl" namespace="http://company.com/services/service" service="CompanyService" />
</http:inbound-endpoint>
<choice>
<when>.....</when>
<otherwise><!-- Here I want to throw Soap Fault ---></otherwise>
</choice>
<catch-exception-strategy>
<flow-ref name="generateErrorResponse" />
</catch-exception-strategy>