带有WebBhere MQ 7.1的MDB(激活规范)的Websphere 8.5.5.2

时间:2014-07-09 11:03:48

标签: java-ee ejb ibm-mq websphere-8 message-driven-bean

我在Websphere 8.5.5.2上部署了一个应用程序,该应用程序有许多MDB,这些MDB使用websphere“激活规范”绑定到Websphere MQ 7.1上的响应队列。但是,我总是在控制台中收到此错误,并且MDB无法使用队列中的任何消息

CWSJY0003W:MQJCA4004:向MDB“null”的消息传递失败,异常:“端点需要激活。”。

我使用SIB尝试了相同的应用程序,事情很完美。

导致此错误的原因是什么导致MDB无法使用来自MQ上的队列的消息?

2 个答案:

答案 0 :(得分:1)

错误消息MQJCA4004表示消息无法传递给MDB。异常的最后一部分:'endpoint needs to be activated.'就是原因。此处的端点是Message Endpoint,它是容器为管理MDB实例而创建的端点。它不活动的事实意味着它由于任何早期错误而被停用或被标记为不启动。但是,MQ资源适配器不应该首先尝试传递消息,除非端点至少被激活以开始。

因此,最可能的原因是早期错误(包括应用程序错误)导致消息端点被停用。在SystemOut.log中查看以前的错误,并查找警告消息CWWMQ0007W

答案 1 :(得分:0)

我终于找到了原因..在websphere控制台中,在resources-> jms>激活说明 - >'您的条目' - >高级资源,向下滚动到底部并取消选中'如果邮件失败则停止端点'

祝每个人好运