4.2. Camel ActiveMQ コンポーネントの設定例
概要 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、サンプルの Camel ActiveMQ コンポーネントインスタンスを初期化および設定する方法を説明します。このインスタンスを使用して、Camel ルートで ActiveMQ エンドポイントを定義できます。これにより、Camel ルートがブローカーからメッセージを送受信できるようになります。
前提条件 リンクのコピーリンクがクリップボードにコピーされました!
Camel ActiveMQ コンポーネントに必要なバンドルを定義する camel-activemq 機能は、デフォルトではインストール されません。camel-activemq 機能をインストールするには、以下のコンソールコマンドを入力します。
JBossFuse:karaf@root> features:install camel-activemq
Camel ActiveMQ コンポーネントのサンプル リンクのコピーリンクがクリップボードにコピーされました!
次のブループリントのサンプルは、SSL/TLS セキュリティーと JAAS 認証の両方が有効になっている Camel ActiveMQ コンポーネントの完全な設定を示しています。Camel ActiveMQ コンポーネントインスタンスは activemqssl Bean 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>
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>