我使用了一条消息处理器来调用终点并进行有保证的传递。 有时会发生错误消息(与端点WS不兼容的数据类型)导致ERROR HTTP SC:500的错误消息 由于第一个阻塞消息,所有后续消息(这次正确的消息)都被卡住了。 如何解锁消息处理器? 如何从队列中删除它?可能有办法纠正它吗?
如果它在生产中发生,这是非常危险的。
谢谢你!消息处理器
<?xml version="1.0" encoding="UTF-8"?>
<messageProcessor
class="org.apache.synapse.message.processor.impl.forwarder.ScheduledMessageForwardingProcessor"
messageStore="SAPMoveMaterialOriginalMsgStore"
name="SAPMoveMaterialMessageProcessor"
targetEndpoint="SAPmaterialMoveProxyService" xmlns="http://ws.apache.org/ns/synapse">
<parameter name="client.retry.interval">900000</parameter>
<parameter name="throttle">false</parameter>
<parameter name="max.delivery.attempts">50</parameter>
<parameter name="member.count">1</parameter>
<parameter name="message.processor.reply.sequence">handleSAPResponse</parameter>
<parameter name="message.processor.fault.sequence">fault</parameter>
<parameter name="max.delivery.drop">Enabled</parameter>
<parameter name="interval">1000</parameter>
<parameter name="is.active">true</parameter>
</messageProcessor>
结束点
<?xml version="1.0" encoding="UTF-8"?>
<endpoint name="zsap_material_move" xmlns="http://ws.apache.org/ns/synapse">
<address trace="disable" uri="http://r3cr1.echternach.ieeintern:8020/sap/bc/srt/rfc/sap/zsap_material_move">
<timeout>
<duration>60000</duration>
</timeout>
</address>
</endpoint>
答案 0 :(得分:0)
不要将邮件直接发送到您的终端,而是发送到您定义自己的中介的代理服务,并决定将哪种响应发送回邮件处理器