title: Weblogic EJB connection to external Tibco EMS JMS Queue
body: <p>I'm trying to connect a Weblogic (10.3) MDB to a Tibco EMS JMS queue. I've read from the queue using a simple Java/Spring JNDI connection so I know the foreign JNDI lookup names are valid.
  My WL foreign server details:</p>
  
  <pre><code>JNDI Initial Context Factory: com.tibco.tibjms.naming.TibjmsInitialContextFactory
  JNDI Connection URL: tcp://ems-dit-am-uat-1.app.xxx.net:30055
  JNDI Properties:
  java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory
  java.naming.provider.url=tcp://ems-dit-am-uat-1.app.xxx.net:30055
  java.naming.security.principal=rdsuat
  java.naming.factory.url.pkgs=com.tibco.tibjms.naming
  (password entered in Properties Credential box).
  </code></pre>
  
  <p>Destination:</p>
  
  <pre><code>Name, Local JNDI Name and Remote JNDI name all set to Q.NY.DERIV.DRD.RFI
  </code></pre>
  
  <p>Connection Factory:</p>
  
  <pre><code>Name, Local JNDI Name and Remote JNDI name all set to DRDRFIQueueConnectionFactory
  (which simply changes the default connection factory port).
  User/password also set here (same as before).
  </code></pre>
  
  <p>weblogic-ejb-jar.xml</p>
  
  <pre><code>    &lt;weblogic-enterprise-bean&gt;
      &lt;ejb-name&gt;MessageReceiver&lt;/ejb-name&gt;
      &lt;message-driven-descriptor&gt;
          &lt;pool&gt;
              &lt;max-beans-in-free-pool&gt;2&lt;/max-beans-in-free-pool&gt;
          &lt;/pool&gt;
          &lt;destination-jndi-name&gt;Q.NY.DERIV.DRD.RFI&lt;/destination-jndi-name&gt;
          &lt;connection-factory-jndi-name&gt;DRDRFIQueueConnectionFactory&lt;/connection-factory-jndi-name&gt;
      &lt;/message-driven-descriptor&gt;
  &lt;/weblogic-enterprise-bean&gt;
  </code></pre>
  
  <p>The error I get is:
  The Message-Driven EJB: MessageReceiver is unable to connect to the JMS destination: Q.NY.DERIV.DRD.RFI. The Error was:
  Can not get distribute destination information. The destination JNDI name is Q.NY.DERIV.DRD.RFI, the provider URL is null</p>
  
  <p>I've tried moving the config into the weblogic-ejb-jar.xml (ie:</p>
  
  <pre><code>    &lt;weblogic-enterprise-bean&gt;
      &lt;ejb-name&gt;MessageReceiver&lt;/ejb-name&gt;
      &lt;message-driven-descriptor&gt;
          &lt;pool&gt;
              &lt;max-beans-in-free-pool&gt;2&lt;/max-beans-in-free-pool&gt;
          &lt;/pool&gt;
          &lt;destination-jndi-name&gt;Q.NY.DERIV.DRD.RFI&lt;/destination-jndi-name&gt;
          &lt;initial-context-factory&gt;com.tibco.tibjms.naming.TibjmsInitialContextFactory&lt;/initial-context-factory&gt;
          &lt;provider-url&gt;tcp://ems-dit-am-uat-1.app.xxx.net:30055&lt;/provider-url&gt;
          &lt;connection-factory-jndi-name&gt;DRDRFIQueueConnectionFactory&lt;/connection-factory-jndi-name&gt;
      &lt;/message-driven-descriptor&gt;
  &lt;/weblogic-enterprise-bean&gt;
  </code></pre>
  
  <p>but I get a different error:
  Exception activating module: EJBModule(rfiloader.jar) Unable to deploy EJB: MessageReceiver from rfiloader.jar: unable to find EndPointFinder for tcp://ems-dit-am-uat-1.app.xxx.net:30055 </p>
  
  <p>...any ideas?</p>
  
  <p>Thanks
  Chris</p>