3 Replies Latest reply on Apr 27, 2016 10:19 PM by jbertram

    javax.jms.JMSException: Please specify a non-zero length byte[]

    aadike

      While sending message to HornetQ, I am geeting "javax.jms.JMSException: Please specify a non-zero length byte[]". Could you please someone help me to resolve the issue or let me know when do we get such type of error message.

        • 1. Re: javax.jms.JMSException: Please specify a non-zero length byte[]
          jbertram

          Can you provide a full stack-trace?

          • 2. Re: javax.jms.JMSException: Please specify a non-zero length byte[]
            plima_pg

            Hi Justin,

             

            I believe I am running into the same issue as Anand's since he was helping me in another forum to set up a Generic JMS Adapter in order to send a text message from Progress ABL to HornetQ. Here is the full stack-trace as per your request:

             

            S-0018>(Apr 27, 2016 16:02:41:051) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: A JMS session has been created. (9291)

            Thread-39>(Apr 27, 2016 16:02:41:064) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: getNextMessage(): Client requests next message.

            Thread-38>(Apr 27, 2016 16:02:41:066) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: send(): Sending a message to a queue

            Thread-38>(Apr 27, 2016 16:02:41:066) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: send(): Sending a message to: prgs-events-in

            Thread-38>(Apr 27, 2016 16:02:41:066) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb

            javax.jms.JMSException: Please specify a non-zero length byte[]

                at org.hornetq.jms.client.HornetQMessage.setJMSCorrelationIDAsBytes(HornetQMessage.java:380)

                at com.progress.messaging.jms.JMSMessageCreator.setHeaderValues(JMSMessageCreator.java:553)

                at com.progress.messaging.jms.JMSMessageCreator.createMessage(JMSMessageCreator.java:102)

                at com.progress.messaging.jms.SessionContainer.sendToAdptr(SessionContainer.java:592)

                at com.progress.messaging.jms.SessionContainer.sendToAdptr2(SessionContainer.java:727)

                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

                at java.lang.reflect.Method.invoke(Method.java:606)

                at com.progress.javafrom4gl.implementation.MethodHolder.invoke(MethodHolder.java:168)

                at com.progress.javafrom4gl.implementation.RequestExecuter$Request.executeRequest(RequestExecuter.java:264)

                at com.progress.javafrom4gl.implementation.RequestExecuter.executeRequest(RequestExecuter.java:70)

                at com.progress.javafrom4gl.implementation.RequestThread.go(RequestThread.java:63)

                at com.progress.javafrom4gl.implementation.RequestThread.run(RequestThread.java:38)

            S-0003>(Apr 27, 2016 16:02:53:651) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: stop(): Stopping message reception.

            S-0003>(Apr 27, 2016 16:02:53:651) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: stop(): Message reception stopped.

            S-0003>(Apr 27, 2016 16:02:53:651) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: Client was disconnected without calling deleteSession()! (9294)

            Thread-39>(Apr 27, 2016 16:02:53:652) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: getNextMessage(): Sending SHUTDOWN message  to the client.

            S-0003>(Apr 27, 2016 16:02:53:656) 10.3.24.141::sonicMQ1::3620::10034dea67b4f766:5f49e0e1:1545907c13f:-7fbb: The JMS session has been closed. (9295)

             

            Thanks for your help,

            Paulo

            • 3. Re: javax.jms.JMSException: Please specify a non-zero length byte[]
              jbertram

              It appears that com.progress.messaging.jms.JMSMessageCreator.setHeaderValues() is calling javax.jms.Message#setJMSCorrelationIDAsBytes(byte[]) and passing in a null value for the byte[] or a zero-length byte[] which is causing the exception.  Fix the caller and the problem will go away.