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>