目的是在was中配置mq的连接工厂和目标和MQ通信,queue部分都已经实现了,但是在尝试topic时出现了问题:
mq中没有类似queue一样的topic对象,它是通过broker实现发布/订阅的。我照着网上的资料用MQJMS_PSQ.mqsc创建并且启动了队列管理器的代理控制器
[code="java"]C:\Documents and Settings\Administrator>dspmqbrk -m QM_TTL
队列管理器 QM_TTL 的 WebSphere MQ Publish/Subscribe 代理正在运行。[/code]
[color=red]但是,mq里的topic是什么样的概念呢? 我如何创建一个topic呢?
在was配置主题连接工厂和主题目标时,主题目标里有一项是“基本主题名”,怎么填呢? [/color]
后续:(“基本主题名”里随便填了个mq里的队列名,瞎填的)
was启动时,显示jndi绑定成功,但是在启动jms发送程序发送message的时候,was错误:
[code="java"][08-7-1 14:07:38:844 CST] 00000021 ConnectionEve A J2CA0056I: 连接管理器接收到来自资源 JMS$mq.topic.cf$JMSManagedConnection@528635340 的资源适配器的致命连接错误。接收到的异常为 com.ibm.mq.jms.NoBrokerResponseException: MQJMS5053: *** 无代理程序响应。请确保代理程序正在运行。如果您正在使用 WebSphere MQ 代理程序,检查您的 brokerVersion 是否设置为 V1 ***
[08-7-1 14:07:38:859 CST] 00000021 ConnectionEve A J2CA0056I: 连接管理器接收到来自资源 mq/topic/cf 的资源适配器的致命连接错误。接收到的异常为 com.ibm.mq.jms.NoBrokerResponseException: MQJMS5053: *** 无代理程序响应。请确保代理程序正在运行。如果您正在使用 WebSphere MQ 代理程序,检查您的 brokerVersion 是否设置为 V1 ***
[08-7-1 14:07:39:047 CST] 00000021 ServletWrappe E SRVE0068E: 无法调用 servlet TestTopicServlet 的 service() 方法。抛出异常:org.springframework.jms.UncategorizedJmsException: Uncategorized exception occured during JMS processing; nested exception is com.ibm.mq.jms.NoBrokerResponseException: MQJMS5053: *** 无代理程序响应。请确保代理程序正在运行。如果您正在使用 WebSphere MQ 代理程序,检查您的 brokerVersion 是否设置为 V1 **; nested exception is com.ibm.mq.MQException: MQJE001:完成码 2,原因码 2033
Caused by: com.ibm.mq.jms.NoBrokerResponseException: MQJMS5053: ** 无代理程序响应。请确保代理程序正在运行。如果您正在使用 WebSphere MQ 代理程序,检查您的 brokerVersion 是否设置为 V1 ***
at com.ibm.mq.jms.MQPubSubServices.getBrokerResponse(MQPubSubServices.java:443)
at com.ibm.mq.jms.JMSServicesMgr.getBrokerResponse(JMSServicesMgr.java:173)
at com.ibm.mq.jms.MQMessageProducer.checkBrokerResponse(MQMessageProducer.java:2685)
at com.ibm.mq.jms.MQMessageProducer.publish(MQMessageProducer.java:1882)
at com.ibm.mq.jms.MQTopicPublisher.publish(MQTopicPublisher.java:222)
at com.ibm.mq.jms.MQMessageProducer.send(MQMessageProducer.java:976)
at com.ibm.mq.jms.MQMessageProducer.send(MQMessageProducer.java:1056)
at com.ibm.ejs.jms.JMSMessageProducerHandle.send(JMSMessageProducerHandle.java:1169)
at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:538)
at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:515)
.......
---- Begin backtrace for Nested Throwables
com.ibm.mq.MQException: MQJE001:完成码 2,原因码 2033
at com.ibm.mq.MQQueue.getMsg2(MQQueue.java:989)
at com.ibm.mq.jms.MQPubSubServices.getBrokerResponse(MQPubSubServices.java:410)
at com.ibm.mq.jms.JMSServicesMgr.getBrokerResponse(JMSServicesMgr.java:173)
at com.ibm.mq.jms.MQMessageProducer.checkBrokerResponse(MQMessageProducer.java:2685)
at com.ibm.mq.jms.MQMessageProducer.publish(MQMessageProducer.java:1882)
at com.ibm.mq.jms.MQTopicPublisher.publish(MQTopicPublisher.java:222)
at com.ibm.mq.jms.MQMessageProducer.send(MQMessageProducer.java:976)
........ [/code]
谁能帮帮忙阿?
[b]问题补充:[/b]
回复“baallee”:
“BASIC.TOPIC.NAME”这个jndi是在was中配置的啊,那么这个配置怎么做呢?
was中配置主题目标时,有一项是“基本主题名”,怎么填呢?
[b]问题补充:[/b]
回复“lijie250 ”:
java代码呢?