RabbitMq connectionFactory初始化时发生java.io.IOException

时间:2018-08-02 12:25:19

标签: java exception rabbitmq ioexception

当我尝试对RabbitMQ服务器建立.newConnection()时,出现以下错误:

  

java.io.IOException       在com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:126)         在com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:122)         在com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:373)         在com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:64)         在com.rabbitmq.client.impl.recovery.AutorecoveringConnection.init(AutorecoveringConnection.java:134)         在com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:997)         在com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:956)         在com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:914)         在com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:1068)

     

... ...

     

原因:com.rabbitmq.client.ShutdownSignalException:连接   错误于   com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66)   在   com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:36)   在   com.rabbitmq.client.impl.AMQChannel $ BlockingRpcContinuation.getReply(AMQChannel.java:494)   在   com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:315)
  在   com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:64)   在   com.rabbitmq.client.impl.recovery.AutorecoveringConnection.init(AutorecoveringConnection.java:134)

我的代码段是:

ConnectionFactory connectionFactory = new ConnectionFactory();
connectionFactory.setUsername("myUser");
connectionFactory.setUsername("myPass");
connectionFactory.setHost("rabbitmq.test.com"); //also tried with the IP
connectionFactory.setPort(customPort);
connectionFactory.setVirtualHost("/myVHost");
Connection connection = connectionFactory.newConnection();

我也尝试了紧凑设置:

connectionFactory.setUri("amqp://myUser:myPass@rabbitmq.test.com:customPort/myVHost");

现在...奇怪的是,如果我登录到GUI,我可以访问该虚拟主机的队列...

请问您对此情况有何想法?预先感谢。

1 个答案:

答案 0 :(得分:0)

您似乎在使用setUsername()功能来设置密码。