【发布时间】:2013-01-27 08:11:09
【问题描述】:
我们已经在 jms-context.xml 中定义了 inboundConnector,正如 http://activemq.apache.org/jms-and-jdbc-operations-in-one-transaction.html 中为队列指定的那样
我为主题定义了一个新的 inboundTopicConnector,当我为该主题发送一条消息时,它给出了以下错误 java.lang.UnsupportedOperationException: Adestination must be specified。
您能帮我解决这个问题吗?
在 jms-context.xml 中
bean id="inboundConnector" ....
property name="destinationType" value="javax.jms.Queue"
bean id="inboundTopicConnector" ...
property name="destination" value="${jms.topic}"
property name="destinationType" value="javax.jms.Topic"
在 jms-context-without-inbound-listeners.xml 中
bean id="sendTo" ...
bean id="topic" class="org.apache.activemq.command.ActiveMQTopic"
property name="physicalName" value="${jms.topic}"
在java文件中
@Autowired
@Qualifier("topic")
private Destination destination;
getJMSTemplate().setPubSubDomain(true);
getJMSTemplate().send(this.destination, new MessageCreator() {
@Override
public Message createMessage(Session session) throws JMSException {
return session.createTextMessage("Hello...." + destination);
}
});
谢谢, 卡西尔
【问题讨论】:
标签: jms spring-jms jms-topic