qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robbie Gemmell <robbie.gemm...@gmail.com>
Subject Re: Null Pointer exception in Qpid Java CLient 0.24
Date Sun, 13 Oct 2013 22:51:59 GMT
I have made some changes via
https://issues.apache.org/jira/browse/QPID-5224to enable basic
consumer creation to succeed against RabbitMQ. I also
tested the earlier producer-related changes from
https://issues.apache.org/jira/browse/QPID-5184 and made some further
change via https://issues.apache.org/jira/browse/QPID-5223.

I gave the updates a test against RabbitMQ 3.1.5 and they seemed to do the
trick. If you want to try them out, you can either give a fresh trunk
checkout a try, find the relevant commits linked from the JIRAs to backport
to an earlier release, or alternatively I made the nightly build job to run
early so you can find the changes included there:
https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Java-Artefact-Release/lastSuccessfulBuild/artifact/trunk/qpid/java/client/release/qpid-client-0.25.tar.gz

Robbie

On 9 October 2013 11:51, Robbie Gemmell <robbie.gemmell@gmail.com> wrote:

> I had a look at this, and unfortunately it looks to be the result of the
> JMS client making use of a Qpid extension to AMQP which RabbitMQ doesn't
> support, leading it to close the connection when it is enountered. The
> particular usage of this extension causing the problem was added to the
> client in the 0.24 release, so using an older client release should rmeove
> that issue with the consumer.
>
> That said, if you are using a recent 3.x release of RabbitMQ you will
> likely then run into a different issue with producers, due to RabbitMQ now
> interpreting the message 'expiry' header in a different way than Qpid had
> for some time, instead using it as a ttl value. Coupled with the Qpid
> client sending an empty value for expiry rather than not setting it, this
> results in failure when sending messages. See
> https://issues.apache.org/jira/browse/QPID-5184 for more detail and
> changes that were commited to try and work around the issue, which you
> could backport to an older release.
>
> I will tro to take a look at removing use of the AMQP extension when
> connected to RabbitMQ in order to try and restore basic consumer
> capability, but I'm not likely to get to it until the weekend.
>
> Robbie
>
> On 7 October 2013 22:28, k.madnani84 <k.madnani84@gmail.com> wrote:
>
>> Even using the above format throws me the exception:
>> Destination Created: 'topic:'/'/amq.topic'; None
>> java.lang.NullPointerException
>>
>> Therefore i tried to use queue and to my surprise i could see the queue
>> got
>> created in RabbitMQ broker but its not binded to the RabbitMQ Exchange
>> 'amq.direct' and messages not getting published to it.I get the below
>> error
>> and its probably at createCOnsumer call
>>
>> Destination Created:
>> direct://amq.direct/myqueue/myqueue?routingkey='myqueue'&durable='true'
>> javax.jms.JMSException: Error registering consumer:
>> org.apache.qpid.AMQException: Woken up due to class javax.jms.JMSException
>>         at
>> org.apache.qpid.client.AMQSession.toJMSException(AMQSession.java:3494)
>>         at
>> org.apache.qpid.client.AMQSession$4.execute(AMQSession.java:2039)
>>         at
>> org.apache.qpid.client.AMQSession$4.execute(AMQSession.java:1991)
>>         at
>>
>> org.apache.qpid.client.AMQConnectionDelegate_8_0.executeRetrySupport(AMQConnectionDelegate_8_0.java:333)
>>         at
>>
>> org.apache.qpid.client.AMQConnection.executeRetrySupport(AMQConnection.java:624)
>>         at
>>
>> org.apache.qpid.client.failover.FailoverRetrySupport.execute(FailoverRetrySupport.java:102)
>>         at
>> org.apache.qpid.client.AMQSession.createConsumerImpl(AMQSession.java:1989)
>>         at
>> org.apache.qpid.client.AMQSession.createConsumer(AMQSession.java:939)
>>         at org.apache.qpid.example.Hello.runTest(Hello.java:59)
>>         at org.apache.qpid.example.Hello.main(Hello.java:40)
>> Caused by: org.apache.qpid.AMQException: Woken up due to class
>> javax.jms.JMSException
>>         at
>> org.apache.qpid.client.util.BlockingWaiter.block(BlockingWaiter.java:202)
>>         at
>>
>> org.apache.qpid.client.protocol.BlockingMethodFrameListener.blockForFrame(BlockingMethodFrameListener.java:122)
>>         at
>>
>> org.apache.qpid.client.protocol.AMQProtocolHandler.writeCommandFrameAndWaitForReply(AMQProtocolHandler.java:698)
>>         at
>>
>> org.apache.qpid.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:719)
>>         at
>>
>> org.apache.qpid.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:713)
>>         at
>>
>> org.apache.qpid.client.AMQSession_0_8.sendExchangeBound(AMQSession_0_8.java:428)
>>         at
>> org.apache.qpid.client.AMQSession_0_8.access$100(AMQSession_0_8.java:62)
>>         at
>> org.apache.qpid.client.AMQSession_0_8$2.execute(AMQSession_0_8.java:410)
>>         at
>> org.apache.qpid.client.AMQSession_0_8$2.execute(AMQSession_0_8.java:407)
>>         at
>>
>> org.apache.qpid.client.failover.FailoverNoopSupport.execute(FailoverNoopSupport.java:67)
>>         at
>> org.apache.qpid.client.AMQSession_0_8.isBound(AMQSession_0_8.java:405)
>>         at
>> org.apache.qpid.client.AMQSession.registerConsumer(AMQSession.java:2873)
>>         at
>> org.apache.qpid.client.AMQSession.access$400(AMQSession.java:98)
>>         at
>> org.apache.qpid.client.AMQSession$4.execute(AMQSession.java:2016)
>>         ... 8 more
>> Caused by: javax.jms.JMSException: Exception thrown against AMQConnection:
>> Host: zldv0434.vci.att.com
>> Port: 5672
>> Virtual Host:
>> Client ID: zldv0434.vci.att.com
>> Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
>> closed connection and reconnection not permitted.
>>         at
>>
>> org.apache.qpid.client.AMQConnection.exceptionReceived(AMQConnection.java:1285)
>>         at
>>
>> org.apache.qpid.client.protocol.AMQProtocolHandler.closed(AMQProtocolHandler.java:270)
>>         at
>> org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:222)
>>         at java.lang.Thread.run(Unknown Source)
>> Caused by: org.apache.qpid.AMQDisconnectedException: Server closed
>> connection and reconnection not permitted.
>>         ... 3 more
>>
>> Any idea what could fix it??
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://qpid.2158936.n2.nabble.com/Null-Pointer-exception-in-Qpid-Java-CLient-0-24-tp7599126p7599153.html
>> Sent from the Apache Qpid developers mailing list archive at Nabble.com.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> For additional commands, e-mail: dev-help@qpid.apache.org
>>
>>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message