1 Reply Latest reply on Apr 4, 2017 12:01 PM by andey

    JNDI reference to JMS queue not working

    lamikam2

      Running JBoss eap 7.  Have a queue setup as follows below.  I am trying to get the @reference to be the same under jboss and WLS.

       

      in standalone-full.xml:

       

                      <jms-queue name="HIFAuditQueue" entries="jms/HIFAuditQueue queue/HIFAuditQueue java:jboss/exported/jms/queue/HIFAuditQueue"/>

       

      In my EJB that references the queue, if I use this method to reference:

       

         @Resource(mappedName = "java:jboss/exported/jms/queue/HIFAuditQueue")

          private Queue queue;

       

      it works.  However if I change to:

       

         @Resource(name="jms/HIFAuditQueue")

          private Queue queue;

       

      I get the following error from jboss.

       

      :21:04,116 INFO  [stdout] (default task-27) java.lang.UnsupportedOperationException: Cannot specify destination if producer has a default destination

      12:21:04,116 INFO  [stdout] (default task-27) at org.apache.activemq.artemis.jms.client.ActiveMQMessageProducer.checkDefaultDestination(ActiveMQMessageProducer.java:310) ~[artemis-jms-client.jar:1.1.0.SP16-redhat-1]

      12:21:04,116 INFO  [stdout] (default task-27) at org.apache.activemq.artemis.jms.client.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:172) ~[artemis-jms-client.jar:1.1.0.SP16-redhat-1]

      12:21:04,116 INFO  [stdout] (default task-27) at org.apache.activemq.artemis.ra.ActiveMQRAMessageProducer.send(ActiveMQRAMessageProducer.java:207) ~[?:?]

      12:21:04,116 INFO  [stdout] (default task-27) at com.hsntech.hif.command.HIFPlSqlCommand.sendAuditMessage(HIFPlSqlCommand.java:219) [HansenIntegrationFramework-ejb.jar:?]

      12:21:04,116 INFO  [stdout] (default task-27)

      I cannot use mappedName, as that is not portable.   Also tried "jms/queue/HIFAuditQueue", and same error.

        • 1. Re: JNDI reference to JMS queue not working
          andey

          I guess this message is a bit confusing. But you should specify the destination either when creating the TopicPublisher or when sending the message. Not both. Check how are you send the message in this method TopicPublisher.send().. It should be  : Topicpublisher.send(msg);