我正在使用WSO2 6.3.0,并尝试与WSO2 Message Broker集成以进行担保交付。当端点关闭时,消息将存储在队列中,但是一旦端点处于活动状态,消息就不会传递到端点。我正在使用存储和转发处理器。这是我的存储和处理器代码,
<messageStore name="JMStore" class="org.apache.synapse.message.store.impl.jms.JmsStore" xmlns="http://ws.apache.org/ns/synapse">
<parameter name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
<parameter name="java.naming.provider.url">conf/jndi.properties</parameter>
<parameter name="store.jms.destination">JMStore</parameter>
<parameter name="store.jms.JMSSpecVersion">1.1</parameter>
<parameter name="store.producer.guaranteed.delivery.enable">true</parameter>
<parameter name="store.failover.message.store.name">JMStore</parameter>
</messageStore>
<messageProcessor name="ShceduledProcessor" class="org.apache.synapse.message.processor.impl.forwarder.ScheduledMessageForwardingProcessor" targetEndpoint="Deliveryendpoint" messageStore="JMStore" xmlns="http://ws.apache.org/ns/synapse">
<parameter name="interval">10000</parameter>
<parameter name="client.retry.interval">10000</parameter>
<parameter name="max.delivery.attempts">4</parameter>
<parameter name="max.store.connection.attempts">-1</parameter>
<parameter name="store.connection.retry.interval">1000</parameter>
<parameter name="message.processor.fault.sequence">replysequence</parameter>
<parameter name="message.processor.failMessagesStore">JMStore</parameter>
<parameter name="is.active">true</parameter>
<parameter name="max.delivery.drop">Enabled</parameter>
<parameter name="member.count">1</parameter>
</messageProcessor>
<sequence name="delivery_fail">
<log level="full"/>
<enrich>
<source type="property" clone="true" property="mssg"/>
<target type="envelope"/>
</enrich>
<property name="target.endpoint" value="Deliveryendpoint"/>
<store messageStore="JMStore"/>
</sequence>
预先感谢, 庞玛尼