当我在wso2 esb中使用call out mediator时,我使用DSS Endpoint 只收到请求,我没有得到回复,即使我登录 出局顺序。我在这里发送代理服务。
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="Binaryformat"
transports="https http"
startOnLoad="true"
trace="disable">
<description/>
<target>
<inSequence>
<property name="messageType" value="application/json" scope="axis2"/>
<property name="ContentType" value="application/json" scope="axis2"/>
<log level="full">
<property name="M1" value="*************Callout PROXY*************"/>
</log>
<callout serviceURL="http://192.168.1.201:9769/services/emp_DataService/">
<source type="envelope"/>
<target key="response"/>
</callout>
<log level="full">
<property name="Status" expression="get-property('response')"/>
</log>
<header name="To" action="remove"/>
<property name="RESPONSE" value="true"/>
<!--<property name="OUT_ONLY" value="true"/>-->
<send/>
</inSequence>
<outSequence>
<log level="full">
<property name="Status" expression="get-property('response')"/>
</log>
<payloadFactory media-type="xml">
<format>
<response>outonly</response>
</format>
<args/>
</payloadFactory>
<property name="OUT_ONLY" value="true"/>
<send/>
</outSequence>
</target>
</proxy>
答案 0 :(得分:5)
我认为你错误地配置了callout mediator。检查这里的标注调解员样本
OUT-ONLY设置为“true”意味着在消息上指示一旦从ESB转发就不会有响应消息。您可以从此处http://docs.wso2.org/display/ESB470/Generic+Properties
了解有关OUT_ONLY和其他属性的更多信息答案 1 :(得分:0)
callout mediator是同步的,它会以相同的顺序返回响应(你的inSequence,通过阻塞调用):你的outSequence是不必要的。
但是,您应该添加faultSequence来记录任何错误
您应该在ESB和端点之间使用tcpmon(在ESB_HOME / bin中启动tcpmon)来验证发送到您服务的请求内容,并验证您是否从服务中获得响应。