我在端口号9443(esb1)和9446(esb2)上使用了两个WSO2 ESB 4.6实例,并在9444使用了Message Broker 2.0.1。我正在使用此URL来执行我的任务:http://wso2.org/library/articles/2013/03/configuring-wso2-esb-wso2-message-broker 。我已经使用上面的链接完成了Queue to queue send recieve示例。一切都很好。但问题是,当我向esb1发布任何消息时,它会反映到esb2,因为esb2正在作为我的订阅者。我希望消息存储区应该存储从esb1传递的消息,并根据某些事件,它应该提供esb2发送的消息esb1。 提前致谢。 当我使我的按摩处理器处于活动状态时,我会不断收到此错误:
[2013-04-08 17:58:56,658] ERROR - JobRunShell Job synapse.message.processor.quartz.Processor2-forward job threw an unhan
dled Exception:
java.lang.NullPointerException
at org.wso2.carbon.message.store.persistence.jms.util.JMSUtil.createConnection(JMSUtil.java:46)
at org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.createConnection(JMSMessageStore.java:577)
at org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.getReadConnection(JMSMessageStore.java:517)
at org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.peek(JMSMessageStore.java:239)
at org.apache.synapse.message.processors.forward.ForwardingJob.execute(ForwardingJob.java:88)
at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557)
[2013-04-08 17:58:56,669] ERROR - ErrorLogger Job (synapse.message.processor.quartz.Processor2-forward job threw an exce
ption.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: java.lang.NullPointerException]
at org.quartz.core.JobRunShell.run(JobRunShell.java:224)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557)
Caused by: java.lang.NullPointerException
at org.wso2.carbon.message.store.persistence.jms.util.JMSUtil.createConnection(JMSUtil.java:46)
at org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.createConnection(JMSMessageStore.java:577)
at org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.getReadConnection(JMSMessageStore.java:517)
at org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.peek(JMSMessageStore.java:239)
at org.apache.synapse.message.processors.forward.ForwardingJob.execute(ForwardingJob.java:88)
at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
... 1 more
答案 0 :(得分:0)
看起来你的jndi.properties配置存在一些问题。确保连接工厂配置有效,这似乎导致报告的问题。在消息存储库实现中,“连接工厂”参数的值默认为“QueueConnectionFactory”。如果您尝试使用其他名称指定另一个连接工厂,从配置中删除默认连接工厂(QueueConnectionFactory),请确保在消息存储配置的相应元素中指定正确的连接工厂名称。
希望这有帮助!