我很新WSO2 ESB我有以下問題。我可以登錄文件WSO2消息處理器調用的Web服務響應嗎?
進入我的ESB流我有一個商店中介是把一個XML文檔伊諾一個WSO2 MB隊列,這是我的郵件存儲的配置:
<?xml version="1.0" encoding="UTF-8"?>
<messageStore class="org.apache.synapse.message.store.impl.jms.JmsStore" name="glisMessageStore" xmlns="http://ws.apache.org/ns/synapse">
<parameter name="store.jms.destination">glisQueue</parameter>
<parameter name="store.producer.guaranteed.delivery.enable">false</parameter>
<parameter name="store.jms.cache.connection">true</parameter>
<parameter name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
<parameter name="connectionfactory.QueueConnectionFactory">amqp://admin:[email protected]/carbon?brokerlist='tcp://localhost:5675'</parameter>
<parameter name="store.jms.JMSSpecVersion">1.1</parameter>
</messageStore>
正如你所看到的我的文檔被放入隊列中的glisQueue。
然後我部署(這個項目)命名glisMessageProcessor是檢查隊列不爲空,如果它包含了一些XML文檔發送到外部Web服務執行HTTP調用消息處理器,這是我的消息處理器的配置:
<?xml version="1.0" encoding="UTF-8"?>
<messageProcessor class="org.apache.synapse.message.processor.impl.forwarder.ScheduledMessageForwardingProcessor" messageStore="glisMessageStore" name="glisMessageProcessor" targetEndpoint="glisEndpoint" xmlns="http://ws.apache.org/ns/synapse">
<parameter name="client.retry.interval">1000</parameter>
<parameter name="max.delivery.attempts">4</parameter>
<parameter name="member.count">1</parameter>
<parameter name="message.processor.reply.sequence">glisResponseSequence</parameter>
<parameter name="max.delivery.drop">Disabled</parameter>
<parameter name="interval">1000</parameter>
<parameter name="is.active">true</parameter>
</messageProcessor>
正如你可以看到它正在使用的glisMessageStore作爲數據源(因此它是使用glisQueue隊列defiend在它來獲取要發送的數據),併發送這些數據到glisEndpoint這是我的web服務的端點(它在我的項目中定義)。
它工作正常,數據正確發送到由glisEndpoint代表的外部Web服務。
我唯一的問題是:我的web服務在被調用時返回一條消息(包含我需要以某種方式存儲的一些信息)。
我可以用某種方式配置我的glissMessageProcessor來檢索這些響應消息並將其放入日誌文件中嗎?