HermesJMS не может подключиться к серверу TibcoEMS - PullRequest
1 голос
/ 17 апреля 2019

Я пытаюсь просмотреть очереди на удаленном сервере TibcoEMS (версия 8+), используя HermesJMS. Всякий раз, когда я использую опцию Обзор на настроенном сервере EMS, я получаю следующую ошибку (сервер и порт скрыты):

com.tibco.tibjms.admin.TibjmsAdminException: Unable to connect to server. Root cause:
javax.jms.JMSException: Failed to connect to the server at tcp://servername.domain.com:port
    at com.tibco.tibjms.admin.MessengerUtil.<init>(MessengerUtil.java:59)
    at com.tibco.tibjms.admin.TibjmsAdmin.<init>(TibjmsAdmin.java:458)
    at com.tibco.tibjms.admin.TibjmsAdmin.<init>(TibjmsAdmin.java:439)
    at hermes.ext.ems.TibcoEMSAdminFactory.createAdmin(TibcoEMSAdminFactory.java:105)
    at hermes.ext.ems.TibcoEMSAdmin.getAdmin(TibcoEMSAdmin.java:75)
    at hermes.ext.ems.TibcoEMSAdmin.discoverDestinationConfigs(TibcoEMSAdmin.java:261)
    at hermes.impl.HermesAdminAdapter.discoverDestinationConfigs(HermesAdminAdapter.java:82)
    at hermes.impl.DefaultHermesImpl.discoverDestinationConfigs(DefaultHermesImpl.java:1126)
    at hermes.browser.tasks.DiscoverDestinationsTask.invoke(DiscoverDestinationsTask.java:77)
    at hermes.browser.tasks.TaskSupport.run(TaskSupport.java:175)
    at hermes.browser.tasks.ThreadPool.run(ThreadPool.java:170)
    at java.lang.Thread.run(Unknown Source)
Internal exception:
javax.jms.JMSException: Failed to connect to the server at tcp://servername.domain.com:port
    at com.tibco.tibjms.TibjmsxLinkTcp._createSocket(TibjmsxLinkTcp.java:823)
    at com.tibco.tibjms.TibjmsxLinkTcp.connect(TibjmsxLinkTcp.java:914)
    at com.tibco.tibjms.TibjmsConnection._create(TibjmsConnection.java:1351)
    at com.tibco.tibjms.TibjmsConnection.<init>(TibjmsConnection.java:4311)
    at com.tibco.tibjms.TibjmsQueueConnection.<init>(TibjmsQueueConnection.java:36)
    at com.tibco.tibjms.TibjmsxCFImpl._createImpl(TibjmsxCFImpl.java:200)
    at com.tibco.tibjms.TibjmsxCFImpl._createConnection(TibjmsxCFImpl.java:253)
    at com.tibco.tibjms.TibjmsQueueConnectionFactory.createQueueConnection(TibjmsQueueConnectionFactory.java:87)
    at com.tibco.tibjms.admin.MessengerUtil.<init>(MessengerUtil.java:47)
    at com.tibco.tibjms.admin.TibjmsAdmin.<init>(TibjmsAdmin.java:458)
    at com.tibco.tibjms.admin.TibjmsAdmin.<init>(TibjmsAdmin.java:439)
    at hermes.ext.ems.TibcoEMSAdminFactory.createAdmin(TibcoEMSAdminFactory.java:105)
    at hermes.ext.ems.TibcoEMSAdmin.getAdmin(TibcoEMSAdmin.java:75)
    at hermes.ext.ems.TibcoEMSAdmin.discoverDestinationConfigs(TibcoEMSAdmin.java:261)
    at hermes.impl.HermesAdminAdapter.discoverDestinationConfigs(HermesAdminAdapter.java:82)
    at hermes.impl.DefaultHermesImpl.discoverDestinationConfigs(DefaultHermesImpl.java:1126)
    at hermes.browser.tasks.DiscoverDestinationsTask.invoke(DiscoverDestinationsTask.java:77)
    at hermes.browser.tasks.TaskSupport.run(TaskSupport.java:175)
    at hermes.browser.tasks.ThreadPool.run(ThreadPool.java:170)
    at java.lang.Thread.run(Unknown Source)

Однако я могу подключиться к серверу по требуемому порту, подключиться к серверу с помощью консоли администратора EMS, также могу подключиться к этому серверу с помощью Java-программы, используя приведенный ниже код и список имен очередей:

TibjmsAdmin admin = new TibjmsAdmin( serverUrl, userName, passwd );
System.out.println( "Displaying queues" );
for (QueueInfo qf: admin.getQueues())
    System.out.println( qf.getName()  );

Пробовал поиск по сети и ТАК, но безрезультатно. Это не проблема аутентификации, так как я могу подключиться с помощью консоли администратора EMS и Java-программы.

Есть какая-нибудь подсказка, что здесь происходит?

1 Ответ

0 голосов
/ 22 мая 2019

Почему вы хотите использовать hermesJMS?Вместо этого вы можете использовать GEMS, которая идеально подходит для TIBCO EMS, и вы можете выполнить ряд операций с использованием GEMS, включая публикацию сообщения в очереди и чтение содержимого (тела) ожидающего сообщения в очереди.

...