2015-10-24 48 views
0

我嘗試後使用JMS消息的ActiveMQ,的ActiveMQ ConnectionFailedException

String loginID="admin"; 
String loginPswd="admin"; 
String hostName="svful0000283np.nyzdc.local"; 
String channel="http"; 
String portNumber="8161"; 
String hostUrl=channel + "://" + hostName + ":" + portNumber; 
String inputQueue="com.nbn.telecom.sap.ManageSQ"; 
String outputQueue="com.nbn.telecom.sap.ManageSQ.response"; 

String messageText="my text";        
ConnectionFactory factory = new ActiveMQConnectionFactory(loginID, loginPswd,hostUrl);   
Connection connection = factory.createConnection(); 
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); 

在上述最後一條語句給出了以下錯誤消息 -

org.apache.activemq.ConnectionFailedException: The JMS connection has failed:   Failed to perform GET on: http://svful0000283np.nyzdc.local:8161 Reason: null 

有什麼能爲錯誤的原因?感謝您的幫助提前

回答

0

雖然再次抓住你的問題,我看到8161端口...這是碼頭默認端口 .....其管理​​該條款ActiveMQ的管理控制檯 .....

你只能分別消息使用消息的通訊端口.....港口61616,5672,61613,1883年,61614openwire,AMQP,蹬地,MQTT,WS協議.....

這個配置駐留在這裏....在 '[ACTIVEMQ_HOME]/的conf/activemq.xml中'

  <transportConnectors> 
       <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB --> 
       <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/> 
       <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/> 
       <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/> 
       <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/> 
       <transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/> 
      </transportConnectors> 

你可以更改端口爲其它數字,如果它不衝突.. ..

0.0.0.0僅適用於回送IP 127.0.0.1 ......我的意思是隻在本地主機....

否則,通過查找IP通過ifconfig更換IP 0.0.0.0如果是UNIX .. ...如果是Windows或者其他ipconfig基於DOS ...應該在您運行ActiveMQ的計算機上完成

+0

大多數情況下會發生此異常,可能是因爲防火牆問題....或者由於其他網絡相關問題.....並且我希望你在不同的機器上運行ActiveMQ ....否則,你正在使用'hostname'作爲你的連接.....你需要更新你的'/ etc/hosts',即使是本地機器....這就是問題所在那麼它說, - 無法解析主機。 –