java - 如何在application.yml中定义bean?

标签 java spring-boot apache-camel jms javabeans

我有两个 bean 的配置:

@Configuration
public class JmsConfiguration {

    @Bean
    PlatformTransactionManager jmsTransactionManager(ConnectionFactory jmsConnectionFactory) {
        return new JmsTransactionManager(jmsConnectionFactory);
    }

    @Bean
    public JmsComponent jms(ConnectionFactory jmsConnectionFactory) {
        return JmsComponent.jmsComponentClientAcknowledge(jmsConnectionFactory);
    }
}

bean 描述不是 spring-boot 方法。
我尝试在 application.yml 中定义并删除代码,但它不起作用

camel:
    jms:
        session:
            acknowledge:
                 mode: CLIENT_ACKNOWLEDGE

我做错了什么?

最佳答案

请参阅camel-jms spring boot 自动配置和选项名称的文档:https://camel.apache.org/components/latest/jms-component.html#_spring_boot_auto_configuration - 在那里你可以看到它的名字camel.component.jms.acknowledgement-mode-name

还要确保您在 pom.xml 中使用 camel-jms-starter 作为依赖项来使用 Spring Boot 启动器。

关于java - 如何在application.yml中定义bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58098149/

相关文章:

java - mock 幂等消费者

java - 为什么要强制转换为同一类型?

java - Spring 启动: How to bind list of objects on POST in thymleaf

java - 具有多维列表的 Foreach

java - Alfresco Angular UI 和自定义 Spring Boot 后端

java - Python 请求模拟 CURL POST 发送包含 1 个或多个文件和 JSON 正文的多部分请求

regex - 如何 : Apache Camel, 正则表达式匹配文件

jboss - Camel 应用程序在关闭 session 后尝试使用 JMS session

java - 我如何读取文本文件并将其显示在 netbeans JTextArea 中?

java - 将本地时间转换为 UTC,反之亦然