2016-12-06 59 views
0

當試圖連接到Active MQ上的隊列時,我收到以下錯誤消息。Active MQ無法在Apache Camel下運行

Failed to create route ...because of Failed to resolve endpoint: amq://queue:ROBOMQ.TO.MPM due to: Password must also be provided when using username/password as credentials. 

下面的Camel XML中AMQ bean的聲明。已經工作了好幾個月,但現在已經停止。

<bean id="amq" class="org.apache.activemq.camel.component.ActiveMQComponent"> 
    <property name="brokerURL" value="tcp://127.0.0.1:61616" /> 
    <property name="userName" value="${username}" /> 
    <property name="password" value="${password}" /> 
</bean> 

任何想法?

回答

4

原因是在項目中駱駝版本已經從2.16更改爲2.18,因此bean聲明也需要改變,顯式定義了連接工廠。

FROM:

<bean id="amq" class="org.apache.activemq.camel.component.ActiveMQComponent"> 
    <property name="brokerURL" value="tcp://127.0.0.1:61616" /> 
    <property name="userName" value="system" /> 
    <property name="password" value="manager" /> 

TO:

<bean id="amq" class="org.apache.activemq.camel.component.ActiveMQComponent"> 
    <property name="connectionFactory"> 
     <bean class="org.apache.activemq.ActiveMQConnectionFactory"> 
     <property name="brokerURL" value="tcp://127.0.0.1:61616" /> 
     <property name="userName" value="system" /> 
     <property name="password" value="manager" /> 
     </bean> 
    </property> 
    </bean>