6.17. 使用 Spring Boot、Apache Camel 和外部消息传递代理

Fuse 使用外部消息传递代理。有关支持的代理、客户端和 Camel 组件组合的更多信息,请参阅 支持的配置

Camel 组件必须连接到 JMS connection-factory。以下示例演示了如何将 camel-amqp 组件连接到 JMS connection-factory。

import org.apache.activemq.jms.pool.PooledConnectionFactory;
import org.apache.camel.component.amqp.AMQPComponent;
import org.apache.qpid.jms.JmsConnectionFactory;
...

AMQPComponent amqpComponent(AMQPConfiguration config) {
       JmsConnectionFactory qpid = new JmsConnectionFactory(config.getUsername(), config.getPassword(), "amqp://"+ config.getHost() + ":" + config.getPort());
       qpid.setTopicPrefix("topic://");

       PooledConnectionFactory factory = new PooledConnectionFactory();
       factory.setConnectionFactory(qpid);

AMQPComponent amqpcomp = new AMQPComponent(factory);