当前位置:   article > 正文

Mq报错:Caused by: com.rabbitmq.client.ShutdownSignalException

caused by: com.rabbitmq.client.shutdownsignalexception: connection error

详细报错信息:

 这里可以看见: connection error; protocol method: #method<connection.close>(reply-code=530, reply-text=NOT_ALLOWED - access to vhost '/' refused for user 'admin', class-id=10, method-id=40)


我在这里是写了一个简单的试例。也就是simple模式

代码如下

  1. package lanlan.Simple;
  2. import com.rabbitmq.client.Channel;
  3. import com.rabbitmq.client.Connection;
  4. import com.rabbitmq.client.ConnectionFactory;
  5. import java.io.IOException;
  6. import java.util.concurrent.TimeoutException;
  7. public class sheng {
  8. //所有中间键技术都是基于tcp/ip协议之上来构建,只不过rabbitma是遵循ampq协议
  9. public static void main(String[] args) throws IOException, TimeoutException {
  10. //1:创建连接工程
  11. ConnectionFactory connectionFactory = new ConnectionFactory();
  12. connectionFactory.setHost("101.35.114.14");
  13. connectionFactory.setPort(5672);
  14. connectionFactory.setUsername("admin");
  15. connectionFactory.setPassword("admin");
  16. connectionFactory.setVirtualHost("/");
  17. //为下面提供对象
  18. Connection connection = null;
  19. Channel channel = null;
  20. try{
  21. //2:创建连接connnction
  22. connection = connectionFactory.newConnection("客户端看见的消息");
  23. //3:通过连接获取通道
  24. channel = connection.createChannel();
  25. //4:通过创建交换机,声明队列。绑定关系。路由key,发送消息,和接收消息
  26. String queueName = "queuejin";
  27. /*
  28. 参数1:队列名称
  29. 参数2:是否持久化,
  30. 参数3:排他性,是否独占独立
  31. 参数4:是否自动删除,一般不自动删除
  32. 参数5:携带参数,后面有用到
  33. * */
  34. channel.queueDeclare(queueName,false,false,false,null);
  35. //5:准备消息内容
  36. String message ="jinzhng!!!!";
  37. //6:发送出去给队列
  38. channel.basicPublish("",queueName,null,message.getBytes());
  39. System.err.println("发送消息成功");
  40. } catch (IOException | TimeoutException e) {
  41. e.printStackTrace();
  42. } finally {
  43. //7:关闭通道
  44. if (channel!=null&& channel.isOpen()){
  45. channel.close();
  46. }
  47. //8:关闭连接
  48. if (connection !=null && connection.isOpen()){
  49. connection.close();
  50. }
  51. }
  52. }
  53. }

 解决方法:可以看见我是使用admin去登录的mq的管理但是这里我的admin其实是没有管理权限的


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/484403
推荐阅读
相关标签
  

闽ICP备14008679号