Wso2中介中的自定义错误处理程序
在我的In-sequence mediatior中,我需要对输入值处理一些逻辑,并根据这些逻辑决定是调用webservice还是返回错误。我已将序列定义如下Wso2中介中的自定义错误处理程序,wso2,mediator,wso2carbon,Wso2,Mediator,Wso2carbon,在我的In-sequence mediatior中,我需要对输入值处理一些逻辑,并根据这些逻辑决定是调用webservice还是返回错误。我已将序列定义如下 <sequence xmlns="http://ws.apache.org/ns/synapse" name="m1"> <class name="com.myclass"> </class> <makefault version="soap11"> &
<sequence xmlns="http://ws.apache.org/ns/synapse" name="m1">
<class name="com.myclass">
</class>
<makefault version="soap11">
<code xmlns:soap11Env="http://schemas.xmlsoap.org/soap/envelope/" value="soap11Env:Client"/>
<reason value="ERROR_MESSAGE"/>
<role>Acc</role>
<detail>Test Details</detail>
</makefault>
<log/>
</sequence>
行政协调会
测试细节
问题是默认情况下,Web服务总是将故障信息传递给Web服务。我如何理解以下内容
1.在中介中抛出自定义异常的情况下,soap错误将被抛出回webservice客户端。
2.如果所有信息都正确,则会正确调用Web服务,客户端会得到正确的响应。您需要定义一个单独的序列来处理故障。然后,在插入序列中,需要将该故障序列设置为“onError”属性。所以你的语无伦次看起来像
<sequence xmlns="http://ws.apache.org/ns/synapse" name="m1" onError="yourFaultSequence">
<class name="com.myclass">
</class>
<log/>
<send/>
</sequence>
添加上述配置是为了给出一个想法。请注意onError属性。
这也会有帮助