Сервер EMS имеет собственный встроенный сервер JNDI. То, что вы на самом деле делаете при подключении: 1) запрашивает у сервера JNDI EMS определение фабрики соединений, а затем 2) создает соединение на основе возвращенной фабрики. Это подразумевается тем фактом, что вы используете java.naming.provider.url.
Измените определение фабрики соединений (factories.conf) на сервере EMS для используемой вами фабрики соединений. Определение по умолчанию для заводов по умолчанию (например, QueueConnectionFactory) при новой установке - «tcp: // 7222», которое будет заменено на «tcp: // hostname: 7222» сервером при получении. Вы можете изменить это определение, например, "tcp: //hostname.myfqdn.com: 7222" и все должно работать.
Вы также можете полностью обойти сервер JNDI, создав прямое соединение, но я бы не рекомендовал это, поскольку определение фабрики соединений, возвращаемое сервером, может содержать информацию о балансировке нагрузки и отказоустойчивых парах, настройках SSL или указывать на совершенно другая пара серверов и т. д. Это также позволяет администраторам EMS изменять определение фабрик соединений без необходимости изменения кода или даже конфигурации клиентов.