Rabbitmq:手动创建的用户不工作
Rabbitmq : manually created user is not working
我刚开始使用 Rabbitmq,我正在尝试将它与 grails 一起使用。我在 grails 中成功设置了 rabbitmq。当我使用用户名 = "guest" 和密码 = "guest" 创建连接时它工作正常,但是当我尝试使用手动创建的用户时它会抛出一些错误,如下所示:
Error initializing the application: null
java.io.IOException
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:106)
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:102)
at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:124)
at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:376)
at com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:36)
at com.rabbitmq.client.impl.recovery.AutorecoveringConnection.init(AutorecoveringConnection.java:83)
at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:595)
at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:637)
at com.budjb.rabbitmq.connection.ConnectionContextImpl.start(ConnectionContextImpl.groovy:101)
at com.budjb.rabbitmq.connection.ConnectionManagerImpl.start(ConnectionManagerImpl.groovy:191)
at com.budjb.rabbitmq.connection.ConnectionManagerImpl$_start_closure4.doCall(ConnectionManagerImpl.groovy:176)
at com.budjb.rabbitmq.connection.ConnectionManagerImpl.start(ConnectionManagerImpl.groovy:174)
at com.budjb.rabbitmq.RabbitContextImpl.startConnections(RabbitContextImpl.groovy:193)
at com.budjb.rabbitmq.RabbitContextImpl.start(RabbitContextImpl.groovy:78)
at com.budjb.rabbitmq.RabbitContextProxy.start(RabbitContextProxy.groovy:188)
at RabbitmqNativeGrailsPlugin$_closure2.doCall(RabbitmqNativeGrailsPlugin.groovy:189)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: com.rabbitmq.client.ShutdownSignalException: connection error
at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:67)
at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:33)
at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:348)
at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:221)
at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:118)
... 17 more
Caused by: java.io.EOFException
at java.io.DataInputStream.readUnsignedByte(DataInputStream.java:290)
at com.rabbitmq.client.impl.Frame.readFrom(Frame.java:95)
at com.rabbitmq.client.impl.SocketFrameHandler.readFrame(SocketFrameHandler.java:139)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:534)
... 1 more
我向该用户提供了所有权限并添加了管理员作为标签。请帮助我。
我认为您需要先手动创建一个虚拟主机,然后再尝试添加您创建的用户。
干杯。
实际上我遇到了同样的问题,您只需先检查或按照以下步骤操作即可:-
1)使用命令创建用户
sudo rabbitmqctl add_user username password
2) 现在为您的用户名设置标签为 admin
sudo rabbitmqctl set_user_tags username administrator
3)现在创建一个新的虚拟主机
sudo rabbitmqctl add_vhost test
4)之后给予完全权限
sudo rabbitmqctl set_permissions -p test username ".*" ".*" ".*"
5) 现在终于在你的配置文件中定义
connection host: "Ip for your server", username: "admin", password: "password" , virtualHost: "test"
现在 运行 您的代码再次成功 运行。
尽情享受!!
我刚开始使用 Rabbitmq,我正在尝试将它与 grails 一起使用。我在 grails 中成功设置了 rabbitmq。当我使用用户名 = "guest" 和密码 = "guest" 创建连接时它工作正常,但是当我尝试使用手动创建的用户时它会抛出一些错误,如下所示:
Error initializing the application: null
java.io.IOException
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:106)
at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:102)
at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:124)
at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:376)
at com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:36)
at com.rabbitmq.client.impl.recovery.AutorecoveringConnection.init(AutorecoveringConnection.java:83)
at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:595)
at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:637)
at com.budjb.rabbitmq.connection.ConnectionContextImpl.start(ConnectionContextImpl.groovy:101)
at com.budjb.rabbitmq.connection.ConnectionManagerImpl.start(ConnectionManagerImpl.groovy:191)
at com.budjb.rabbitmq.connection.ConnectionManagerImpl$_start_closure4.doCall(ConnectionManagerImpl.groovy:176)
at com.budjb.rabbitmq.connection.ConnectionManagerImpl.start(ConnectionManagerImpl.groovy:174)
at com.budjb.rabbitmq.RabbitContextImpl.startConnections(RabbitContextImpl.groovy:193)
at com.budjb.rabbitmq.RabbitContextImpl.start(RabbitContextImpl.groovy:78)
at com.budjb.rabbitmq.RabbitContextProxy.start(RabbitContextProxy.groovy:188)
at RabbitmqNativeGrailsPlugin$_closure2.doCall(RabbitmqNativeGrailsPlugin.groovy:189)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: com.rabbitmq.client.ShutdownSignalException: connection error
at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:67)
at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:33)
at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:348)
at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:221)
at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:118)
... 17 more
Caused by: java.io.EOFException
at java.io.DataInputStream.readUnsignedByte(DataInputStream.java:290)
at com.rabbitmq.client.impl.Frame.readFrom(Frame.java:95)
at com.rabbitmq.client.impl.SocketFrameHandler.readFrame(SocketFrameHandler.java:139)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:534)
... 1 more
我向该用户提供了所有权限并添加了管理员作为标签。请帮助我。
我认为您需要先手动创建一个虚拟主机,然后再尝试添加您创建的用户。
干杯。
实际上我遇到了同样的问题,您只需先检查或按照以下步骤操作即可:-
1)使用命令创建用户
sudo rabbitmqctl add_user username password
2) 现在为您的用户名设置标签为 admin
sudo rabbitmqctl set_user_tags username administrator
3)现在创建一个新的虚拟主机
sudo rabbitmqctl add_vhost test
4)之后给予完全权限
sudo rabbitmqctl set_permissions -p test username ".*" ".*" ".*"
5) 现在终于在你的配置文件中定义
connection host: "Ip for your server", username: "admin", password: "password" , virtualHost: "test"
现在 运行 您的代码再次成功 运行。
尽情享受!!