spring - 来自 jms :listener-container in JavaConfig? 的目标类型是什么

标签 spring spring-3 spring-jms spring-4

JavaConfig 中 jms:listener-containerdestination-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-containerjms:listener 迁移到 JavaConfig,请考虑以下两个链接。

最佳答案

如有疑问,请查看解析器(在本例中为 AbstractListenerContainerParser);该属性不映射到单个属性,它映射到 pubSubDomainsubscriptionDurable...

    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/

相关文章:

javascript - Spring Boot 静态资源

java - 可以对 spring rest 调用进行 junit 测试吗?

spring - 在 3.0.x 版本中禁用 Spring 方法安全性

java - Spring Boot 2.0.0M3 Spring 执行器

html - 使用 SpringFramework3 制作时事通讯(HTML)

java - Spring 3.1 : Redirect after login not working

java - 使用 RabbitMQ 和 JMS API 进行事务管理

java - Spring - JMS,在 JMS activemq 服务器启动/停止几次后,监听器服务器抛出 java.io.EOFException,然后不连接到正在运行的 JMS

spring - JMS队列无负载时消费者数量不缩减

java - 依赖项应该注入(inject)一次还是每个对象中