4.2. Camel ActiveMQ 구성의 예
4.2.1. 개요
이 섹션에서는 샘플 Camel ActiveMQ 구성 요소 인스턴스를 초기화하고 구성하는 방법을 설명합니다. 이 인스턴스를 사용하여 Camel 경로에서 ActiveMQ 엔드포인트를 정의할 수 있습니다. 이를 통해 Camel 경로가 브로커에서 메시지를 보내거나 받을 수 있습니다.
4.2.2. 사전 요구 사항
Camel ActiveMQ 구성 요소에 필요한 번들을 정의하는 camel-activemq
기능은 기본적으로 설치되지 않습니다. camel-activemq
기능을 설치하려면 다음 console 명령을 입력합니다.
JBossFuse:karaf@root> features:install camel-activemq
4.2.3. Camel ActiveMQ 구성 요소 샘플
다음 블루프린트 샘플은 SSL/TLS 보안 및 JAAS 인증이 모두 활성화된 Camel ActiveMQ 구성 요소의 전체 구성을 보여줍니다. Camel ActiveMQ 구성 요소 인스턴스는 activemqssl
8080 ID를 사용하여 에 정의되어 있습니다. 즉, Camel 경로에서 엔드포인트를 정의할 때 사용하는 activemqssl
스키마와 연결되어 있습니다.
<?xml version="1.0" encoding="UTF-8"?> <beans ... > ... <!-- Configure the activemqssl component: --> <bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQSslConnectionFactory"> <property name="brokerURL" value="ssl://localhost:61617" /> <property name="userName" value="Username"/> <property name="password" value="Password"/> <property name="trustStore" value="/conf/client.ts"/> <property name="trustStorePassword" value="password"/> </bean> <bean id="pooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory"> <property name="maxConnections" value="8" /> <property name="maximumActive" value="500" /> <property name="connectionFactory" ref="jmsConnectionFactory" /> </bean> <bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration"> <property name="connectionFactory" ref="pooledConnectionFactory"/> <property name="transacted" value="false"/> <property name="concurrentConsumers" value="10"/> </bean> <bean id="activemqssl" class="org.apache.activemq.camel.component.ActiveMQComponent"> <property name="configuration" ref="jmsConfig"/> </bean> </beans>
4.2.4. Camel 경로 샘플
다음 Camel 경로는 이전 예에 정의된 Camel ActiveMQ 구성 요소를 참조하는 데 activemqssl
스키마를 사용하여 브로커의 security.test
큐에 안전하게 메시지를 보내는 샘플 끝점을 정의합니다.
<?xml version="1.0" encoding="UTF-8"?>
<beans ...>
...
<camelContext xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="timer://myTimer?fixedRate=true&period=5000"/>
<transform><constant>Hello world!</constant></transform>
<to uri="activemqssl:security.test"/>
</route>
</camelContext>
...
</beans>