I came across the following NPE, when trying to use the broker against a
client(Publisher.java). The Qpid server is configured for SSL and client
connect using the url:

"amqp://guest:guest@test/?brokerlist='tcp://localhost:8672?ssl='true''"

2011-03-29 15:34:43,478 ERROR [pool-3-thread-1] (AMQProtocolEngine.java:258)
- Unexpected exception when processing datablock
java.lang.NullPointerException
    at
org.apache.qpid.server.output.ProtocolOutputConverterRegistry.getConverter(ProtocolOutputConverterRegistry.java:59)
    at
org.apache.qpid.server.protocol.AMQProtocolEngine.setProtocolVersion(AMQProtocolEngine.java:889)
    at
org.apache.qpid.server.protocol.AMQProtocolEngine.protocolInitiationReceived(AMQProtocolEngine.java:360)
    at
org.apache.qpid.server.protocol.AMQProtocolEngine.dataBlockReceived(AMQProtocolEngine.java:277)
    at
org.apache.qpid.server.protocol.AMQProtocolEngine$1.run(AMQProtocolEngine.java:254)
    at org.apache.qpid.pool.Job.processAll(Job.java:110)
    at org.apache.qpid.pool.Job.run(Job.java:149)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:619)


The reason is session.getProtocolVersion() returns 0-10 in
ProtocolOutputConverterRegistry#getConverter and the lookup returns null.
Because we only register versions 0.8, 0.9 and 0.91 in the static block in
the same class. Is there any reason to left out version 0-10? Also I don't
see any protocol conversion source in the package
org.apache.qpid.server.output. Is this on purpose or still under development
?

BTW, I fixed an issue related to broker's SSL support and will attach that
patch soon.


Rajika

Reply via email to