JavaConfig 中 jms:listener-container
的 destination-type
是什么?
我已经在 API 中检查了以下两个类,但没有结果。
我正在尝试为主题创建消费者,网络上的许多教程都使用destination-type="topic"
根据23.6 JMS Namespace Support部分,有 表 23.2。 JMS 元素 表的属性。 destination-type 属性的位置:
The JMS destination type for this listener: queue, topic or durableTopic. The default is queue.
对于观众:如果您尝试从 jms:listener-container
和 jms:listener
迁移到 JavaConfig,请考虑以下两个链接。
最佳答案
如有疑问,请查看解析器(在本例中为 AbstractListenerContainerParser
);该属性不映射到单个属性,它映射到 pubSubDomain
和 subscriptionDurable
...
String destinationType = ele.getAttribute(DESTINATION_TYPE_ATTRIBUTE);
boolean pubSubDomain = false;
boolean subscriptionDurable = false;
if (DESTINATION_TYPE_DURABLE_TOPIC.equals(destinationType)) {
pubSubDomain = true;
subscriptionDurable = true;
}
else if (DESTINATION_TYPE_TOPIC.equals(destinationType)) {
pubSubDomain = true;
}
else if ("".equals(destinationType) || DESTINATION_TYPE_QUEUE.equals(destinationType)) {
// the default: queue
}
else {
parserContext.getReaderContext().error("Invalid listener container 'destination-type': " +
"only \"queue\", \"topic\" and \"durableTopic\" supported.", ele);
}
configDef.getPropertyValues().add("pubSubDomain", pubSubDomain);
configDef.getPropertyValues().add("subscriptionDurable", subscriptionDurable);
关于spring - 来自 jms :listener-container in JavaConfig? 的目标类型是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25212488/