Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.23
-
None
Description
Since QPID-4832, if a client, using a BURL that does not reference the exchange, attempts Session#createConsumer(), he will see a stack trace.
Example BURL:
destination.myqueue = BURL:direct:///myqueue/myqueue?routingkey='myqueue'
2013-05-22 11:27:29,255 DEBUG [IoReceiver - localhost/127.0.0.1:5672] [AMQConnection] exceptionReceived done by:IoReceiver - localhost/127.0.0.1:5672 org.apache.qpid.AMQChannelClosedException: Error: org.apache.qpid.AMQSecurityException: Cannot add bindings to the default exchange [error code 403: access refused] [error code 504: channel error] at org.apache.qpid.client.handler.ChannelCloseMethodHandler.methodReceived(ChannelCloseMethodHandler.java:97) at org.apache.qpid.client.handler.ClientMethodDispatcherImpl.dispatchChannelClose(ClientMethodDispatcherImpl.java:164) at org.apache.qpid.framing.amqp_0_9.ChannelCloseBodyImpl.execute(ChannelCloseBodyImpl.java:137) at org.apache.qpid.client.state.AMQStateManager.methodReceived(AMQStateManager.java:114) at org.apache.qpid.client.protocol.AMQProtocolHandler.methodBodyReceived(AMQProtocolHandler.java:520) at org.apache.qpid.client.protocol.AMQProtocolSession.methodFrameReceived(AMQProtocolSession.java:462) at org.apache.qpid.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:97) at org.apache.qpid.client.protocol.AMQProtocolHandler.received(AMQProtocolHandler.java:477) at org.apache.qpid.client.protocol.AMQProtocolHandler.received(AMQProtocolHandler.java:1) at org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:161) at java.lang.Thread.run(Thread.java:662)
The user can work around the issue by including the exchange name within the BURL.