1

Camel ActiveMQ コンポーネントを使用して ActiveMQ インスタンスを生成しています。

<camel:log message="YMA_IN" />
<camel:inOnly uri="activemqBroker:queue:queue.test" id="activemqBrokerTestQueue"/>
<camel:log message="YMA_OUT" />

エンドポイントでの唯一の jms 構成は、TTL とプールされた接続ファクトリーです。

<amq:connectionFactory id="jmsConnectionFactory" brokerURL="${config.jms.broker.url}" />

<bean id="pooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory" init-method="start" destroy-method="stop">
    <property name="maxConnections" value="15" />
    <property name="connectionFactory" ref="jmsConnectionFactory" />
</bean>

<bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration">
    <property name="connectionFactory" ref="pooledConnectionFactory"/>
    <property name="timeToLive" value="${config.jms.time.to.live}" />
</bean>

<!-- Broker configuration -->
<bean id="activemqBroker" class="org.apache.activemq.camel.component.ActiveMQComponent">
    <property name="configuration" ref="jmsConfig"/>
</bean>  

ブローカがダウンしている場合、エクスチェンジは inonly でスタックしたままになり (ログインしているが、アウトはしていない)、ブローカが復旧するまで無期限に表示されます。例外なし、タイムアウトなしなど...

ブローカーがダウンしている場合、これは予想される動作ですか? 私は例外を期待していましたか?不足している構成はありますか?

キャメル 2.10.1

4

3 に答える 3

1

同期送信を使用するオプションもあり、クライアントはより早くエラーを検出し (タイムアウトを待つ必要がありません)、Camel が検出できる例外をスローできます。でいくつかの詳細を参照してください

于 2013-08-17T08:07:45.633 に答える