2012-12-01 24 views
0

我已經嘗試了一個星期來將本地應用程序連接到CloudFoundry服務上的遠程rabbitMQ,但是連接:llll: connection = factory.newConnection(); 由於java.net.SocketTimeoutException總是拋出一個IOException:讀取超時 我已經正確地按照本教程的步驟創建隧道並收集它的信息,但是它仍然不起作用。 這裏是河旁我用我的連接本地應用程序:如何將本地程序連接到服務隧道?

String rabbitMQURI = 「amqp://ubSGLHE7886x6:[email protected]:10100/ve296d42a44794aac92536b362681e92a」; 
factory.setUri(rabbitMQURI); 

回答

0

你確定這個端口號是正確的?如果您沒有任何其他隧道處於活動狀態,則默認起始端口爲10000.

0

不幸的是,我相信您不能使用帶有RabbitMQ服務的vmc隧道,只能使用數據庫服務。我不相信AMQP端口已被映射。

1

只想確保當您嘗試將本地Java應用程序連接到CF rabbitmq服務時,您首先通過運行「vmc tunnel servicename」打開隧道。這會給你連接屬性:用戶名,密碼,虛擬主機(虛擬主機)和端口(如丹告訴的,它應該從10000開始,如果你沒有其他隧道打開)。您需要使用主機名「localhost」。爲了使用它,請確保您的主機文件127.0.0.1映射到名稱「localhost」。

我可以用幾行代碼連接到我自己的隧道沒有問題:

ConnectionFactory factory = new ConnectionFactory(); 
    factory.setUri("amqp://usd0LnHpwPMvE:[email protected]:10000/v51d86f3a7033476695655e42eaa16b1f"); 
    Connection conn = factory.newConnection(); 
    Channel channel = conn.createChannel(); 
+0

好了,即使文件要求而不是事實,就可以連接到POJO Java中的RabbitMQ服務! –

相關問題