我想在 JBOSS 上部署 MDB。但是发布者不会向 JBOSS AS 发送消息,它正在向 IBM MQ 发送消息。
我应该使用 JCA 来集成 JBOSS 和 IBM MQ 吗?
或者
JBOSS AS 上的 MDB 能否订阅 IBM MQ 从发布者获取消息的主题?
一种方法对另一种方法的优势是什么?
是的,您当然可以在 JBoss 中拥有一个订阅 MQ 主题的 MDB,
您应该将 WebSphere MQ 资源适配器 (WMQRA) 部署到 JBoss 中,然后在 JBoss 中配置 WMQ RA JCA 资源(激活规范、队列/主题)。这将让您部署 MDB,JCA 资源将处理与您的消息所在的 WMQ 队列管理器和队列/主题的连接。
互联网上有一些关于在 JBoss 中设置 WMQ RA 的指南。
从 IBM MQ 在 JBoss 中使用消息的推荐方法是通过消息驱动 Bean (MDB)。这是通过在 JBoss 中部署 IBM JCA 资源适配器 (RA) 来完成的。您必须在 JBoss 中使用 IBM RA,因为此 rar 文件包含与 IBM MQ 通信所需的 IBM MQ 客户端代码。
使用 MDB 方法时,容器(在本例中为 JBoss)与 JCA 一起管理 JMS 连接、消息传递和事务。这让您只需要编写 onMessage() 方法——在后台为您完成了很多工作。