当MDB尝试连接到远程队列时,在WebSphere 8中获取异常

时间:2013-02-08 09:21:38

标签: java ejb ibm-mq websphere-8

当在队列中删除邮件时,我们在Websphere 8中遇到错误。

现在,如果我们重新启动服务器,一切都可以正常运行队列中的所有消息。但是在Queue为空并且在队列中丢弃新消息之后,有时它会起作用,之后就会抛出错误。

有关为何发生这种情况的任何想法?

[2/7/13 20:20:41:363 PST] 0000001e LocalTranCoor E   WLTC0017E: Resources rolled back due to setRollbackOnly() being called.
[2/7/13 20:20:41:425 PST] 0000009a SibMessage    W   [:] CWSJY0003W: JMSCC0110: An exception '
                       Message : java.lang.NullPointerException
                         Class : class java.lang.NullPointerException
                         Stack : com.ibm.msg.client.wmq.v6.jms.internal.MQSession.consume(MQSession.java:1943)
                               : com.ibm.msg.client.wmq.v6.jms.internal.MQSession.loadMessageReference(MQSession.java:4442)
                               : com.ibm.msg.client.jms.internal.JmsSessionImpl.consume(JmsSessionImpl.java:3199)
                               : com.ibm.msg.client.jms.internal.JmsSessionImpl.run(JmsSessionImpl.java:2838)
                               : com.ibm.mq.jms.MQSession.run(MQSession.java:862)
                               : com.ibm.ejs.jms.JMSSessionHandle.run(JMSSessionHandle.java:1057)
                               : com.ibm.ejs.jms.listener.ServerSession.connectionConsumerOnMessage(ServerSession.java:1085)
                               : com.ibm.ejs.jms.listener.ServerSession.onMessage(ServerSession.java:755)
                               : com.ibm.ejs.jms.listener.ServerSession.dispatch(ServerSession.java:721)
                               : sun.reflect.GeneratedMethodAccessor22.invoke(null:-1)
                               : sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
                               : java.lang.reflect.Method.invoke(Method.java:611)
                               : com.ibm.ejs.jms.listener.ServerSessionDispatcher.dispatch(ServerSessionDispatcher.java:47)
                               : com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:98)
                               : com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:135)
                               : com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:580)
                               : com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1659)
' was caught while processing a message for delivery to a message driven bean.
[2/7/13 20:20:41:425 PST] 0000009a LocalExceptio E   CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "onMessage" on bean "BeanId(JBoomerang#JBoomerangEJB.jar#LNPGWStatusResponseMDB1, null)". Exception data: java.lang.reflect.InvocationTargetException
                at sun.reflect.GeneratedMethodAccessor22.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
                at java.lang.reflect.Method.invoke(Method.java:611)
                at com.ibm.ejs.jms.listener.ServerSessionDispatcher.dispatch(ServerSessionDispatcher.java:47)
                at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:98)
                at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:135)
                at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:580)
                at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1659)
Caused by: java.lang.NullPointerException
                at com.ibm.msg.client.wmq.v6.jms.internal.MQSession.consume(MQSession.java:1943)
                at com.ibm.msg.client.wmq.v6.jms.internal.MQSession.loadMessageReference(MQSession.java:4442)
                at com.ibm.msg.client.jms.internal.JmsSessionImpl.consume(JmsSessionImpl.java:3199)
                at com.ibm.msg.client.jms.internal.JmsSessionImpl.run(JmsSessionImpl.java:2838)
                at com.ibm.mq.jms.MQSession.run(MQSession.java:862)
                at com.ibm.ejs.jms.JMSSessionHandle.run(JMSSessionHandle.java:1057)
                at com.ibm.ejs.jms.listener.ServerSession.connectionConsumerOnMessage(ServerSession.java:1085)
                at com.ibm.ejs.jms.listener.ServerSession.onMessage(ServerSession.java:755)
                at com.ibm.ejs.jms.listener.ServerSession.dispatch(ServerSession.java:721)
                ... 8 more

1 个答案:

答案 0 :(得分:0)

我同意你的意见,这看起来像是IV13714的匹配。查看该页面(http://www-01.ibm.com/support/docview.wss?uid=swg1IV13714)我可以看到IBM在MQ 7.0.1.9中发布了它的修复程序。

由于您处于WAS环境中,这意味着您需要升级到发布MQ 7.0.1.9 +的WAS 8.0.0版本。

IBM在此详细介绍了此信息:http://www-01.ibm.com/support/docview.wss?uid=swg21248089

所以把所有这些放在一起,看起来你需要升级到WAS 8.0.0.5 +