+-
WSO2 ESB 5.0尝试使用消息存储中的消息时出错

我在同一实例上使用具有MB作为功能的WSO2 ESB 5.0

我遇到错误找不到StorableMessage

错误-JmsConsumer [msg-store-C-1]无法从存储接收消息。错误:无法反序列化消息:java.lang.ClassNotFoundException:org.apache.synapse.message.store.impl.commons。StorableMessage找不到by andes_3.1.1

仅一行,没有堆栈跟踪。

可能它在lib上缺少一些.jar,或者它的版本错误,但是我不知道是哪个。

有人知道什么丢失/错误吗?

或者,我应该检查什么?

谢谢

编辑:

将WSO2 Message Broker用作单独的实例就可以了。

无论相同或单独的实例,我都在使用MessageStore和MessageProcessor:

<messageStore class="org.apache.synapse.message.store.impl.jms.JmsStore" name="msg-store" xmlns="http://ws.apache.org/ns/synapse">
  <parameter name="store.jms.destination">msg-queue</parameter>
  <parameter name="store.producer.guaranteed.delivery.enable">false</parameter>
  <parameter name="store.jms.cache.connection">false</parameter>
  <parameter name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
  <parameter name="java.naming.provider.url">repository/conf/jndi.properties</parameter>
  <parameter name="store.jms.JMSSpecVersion">1.1</parameter>
</messageStore>
<messageProcessor class="org.apache.synapse.message.processor.impl.sampler.SamplingProcessor" messageStore="msg-store" name="msg-processor" xmlns="http://ws.apache.org/ns/synapse">
  <parameter name="sequence">delivery-or-death-sequence</parameter>
  <parameter name="interval">1</parameter>
  <parameter name="is.active">true</parameter>
  <parameter name="concurrency">1</parameter>
</messageProcessor>
0
投票

首先,不建议将MB功能安装到ESB本身。首先将MB作为单独的实例启动。然后按照文档中所述将所有MB库复制到ESB库目录。首先尝试一下。如果您可以为我提供您的突触配置,我可以进一步研究此问题。

0
投票

[2020-03-26 23:48:09,048] []错误-JmsStore无法为商店[QueueStore]创建消息生产者org.apache.synapse.message.StoreForwardException:无法创建到JMS提供程序的连接,因为connectionFactory == null在org.apache.synapse.message.store.impl.jms.JmsStore.newConnection(JmsStore.java:271)在org.apache.synapse.message.store.impl.jms.JmsStore.newWriteConnection(JmsStore.java:403)在org.apache.synapse.message.store.impl.jms.JmsStore.getProducer(JmsStore.java:149)在org.apache.synapse.mediators.store.MessageStoreMediator.mediate(MessageStoreMediator.java:126)在org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:109)在org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:260)在org.apache.synapse.core.axis2.Axis2SynapseEnvironment.mediateFromContinuationStateStack(Axis2SynapseEnvironment.java:805)上在org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:303)在org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:578)在org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:195)在org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)在org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:265)在org.apache.axis2.transport.base.threads.NativeWorkerPool $ 1.run(NativeWorkerPool.java:172)在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624)在java.lang.Thread.run(Thread.java:748)[2020-03-26 23:48:09,052] []警告-JmsProducer [QueueStore-P-1]。忽略的MessageID:urn:uuid:481591f7-aac1-43c5-8e99-57de5139b154[2020-03-26 23:48:09,053] []错误-MessageStoreMediator无法在商店[QueueStore]中存储消息[urn:uuid:83b456ad-7030-4df6-970e-3f7e13b45d7b]。[2020-03-26 23:48:09,054] []错误-QueueAPI无法在商店[QueueStore]中存储消息[urn:uuid:83b456ad-7030-4df6-970e-3f7e13b45d7b]。

请帮助我解决此问题?