Я пытаюсь подключить Weblogic (10.3) MDB к очереди Tibco EMS JMS. Я прочитал из очереди, используя простое соединение JNDI Java / Spring, поэтому я знаю, что внешние имена поиска JNDI действительны.
Данные моего внешнего сервера WL:
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).
Назначение:
Name, Local JNDI Name and Remote JNDI name all set to Q.NY.DERIV.DRD.RFI
Фабрика соединений:
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).
WebLogic-EJB-jar.xml
<weblogic-enterprise-bean>
<ejb-name>MessageReceiver</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>2</max-beans-in-free-pool>
</pool>
<destination-jndi-name>Q.NY.DERIV.DRD.RFI</destination-jndi-name>
<connection-factory-jndi-name>DRDRFIQueueConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
Я получаю ошибку:
Управляемый сообщениями EJB: MessageReceiver не может подключиться к месту назначения JMS: Q.NY.DERIV.DRD.RFI. Ошибка была:
Не удается получить информацию о месте назначения. Имя JNDI получателя - Q.NY.DERIV.DRD.RFI, URL-адрес провайдера - нулевой
Я попытался переместить конфигурацию в weblogic-ejb-jar.xml (то есть:
<weblogic-enterprise-bean>
<ejb-name>MessageReceiver</ejb-name>
<message-driven-descriptor>
<pool>
<max-beans-in-free-pool>2</max-beans-in-free-pool>
</pool>
<destination-jndi-name>Q.NY.DERIV.DRD.RFI</destination-jndi-name>
<initial-context-factory>com.tibco.tibjms.naming.TibjmsInitialContextFactory</initial-context-factory>
<provider-url>tcp://ems-dit-am-uat-1.app.xxx.net:30055</provider-url>
<connection-factory-jndi-name>DRDRFIQueueConnectionFactory</connection-factory-jndi-name>
</message-driven-descriptor>
</weblogic-enterprise-bean>
но я получаю другую ошибку:
Модуль активации исключений: EJBModule (rfiloader.jar) Невозможно развернуть EJB: MessageReceiver от rfiloader.jar: невозможно найти EndPointFinder для tcp: //ems-dit-am-uat-1.app.xxx.net: 30055
... есть идеи?
Спасибо
Chris