Не удается настроить фабрики соединений с очередями в WebSphere Application Server

1

Я использую RAD 9.0 и пытаюсь настроить фабрики соединений очереди в WebSphere Application Server 8.5. У меня есть IBM MQ 7.0 (32-разрядная версия), установленная на одном компьютере (Win7 64-bit).

После настройки фабрик подключения очереди, когда я нажимаю Test Connection, выдается сообщение об ошибке:

Не удалось установить соединение с WebSphere MQ по следующей причине: CC = 2; RC = 2495; AMQ8568: Собственная библиотека JNI mqjbnd не найдена. Для установки клиента это ожидается. [3 = mqjbnd]

Родной путь библиотеки (в JMS> WebSphere MQ messeging provider) установлен в C: /Program Files (x86)/IBM/WebSphere MQ\java\lib.

Я также попытался установить его в C: /Program Files (x86)/IBM/WebSphere MQ\java\lib64 но все же я получаю ту же ошибку.

Также необходимо настроить Factory Queue Connection Factory для настройки порта прослушивателя для MDB?

  • 0
    Является ли установка MQ клиентской? Клиентские установки не поставляются с mqjbnd.dll. В этом случае необходимо изменить фабрику соединений для подключения через канал SVRCONN, а не через режим привязок.
Теги:
ibm-mq
jms
javabeans
ibm-was

2 ответа

1

Сообщение об ошибке означает, что вы настроили фабрику соединений, чтобы иметь тип транспорта Bindings, и поэтому адаптер ресурсов WMQ в WAS должен загружать собственные библиотеки, находящиеся в установке MQ (обратите внимание, что установка клиента MQ не входит в эти библиотеки).

Предполагая, что вы хотите подключиться в режиме Bindings. У вас есть полная локальная установка MQ Server в том же поле, что и сервер WAS, тогда вам нужно будет настроить "Native Library Path" на панели поставщика сообщений WebSphere MQ в WAS (Ресурсы> JMS > Провайдеры JMS). Вы должны изменить поставщика, который находится в той же области, что и установленная фабрика соединений очереди.

Свойство MQ_INSTALL_ROOT является старым свойством, используемым в WAS 6.0 и WAS 6.1, и предназначено только для использования в целях миграции в WAS 7 и далее.

Примечание. Если у вас есть среда ND, операция "Test Connection" потенциально может выполняться в процессе dMgr, а не на сервере. Если ваш dMgr находится на другом хосте, то библиотеки не будут найдены. В этом случае вы должны убедиться, что сервер приложений запущен до выбора кнопки "Проверить подключение".

  • 0
    проблема была решена. Я использовал транспортный тип как «Привязки» вместо «Привязки, затем клиент» для подключения к MQ.
0

WAS использует переменную среды MQ_INSTALL_ROOT, чтобы указать (встроенный) клиент WebSphereMQ (Environment-> переменные WebSphere). Значение по умолчанию - $ {WAS_INSTALL_ROOT}/lib/WMQ. Я думаю, вам не нужна отдельная установка клиента WebSphereMQ - он поставляется с WAS (я работаю с WAS8, но, думаю, они не изменили его в 8.5). Что касается вашего вопроса, это может быть проблема с путём: он использует пробелы. Попробуйте установить клиентские библиотеки WebSphereMQ в каталог без пробелов (например, C:\IBM\WMQClient). Но я думаю, что вам это не нужно, проверьте каталог $ {WAS_INSTALL_ROOT}/lib/WMQ - он должен быть там.

И об Спецификации активации - вам не нужно Factory Queue Connection Factory, вам нужно только определение очереди, в которое будет подключаться спецификация активации.

  • 0
    Спасибо за ответы. Я проверил мой env. переменные, но я не нашел MQ_INSTALL_ROOT. В любом случае я создал один, но проблема все еще сохраняется. Я попытался переместить папку WMQ в другое место, чтобы в пути не было пробелов, но все равно я получаю ту же ошибку. Я также попытался перезапустить RAD после изменения переменных env, но не повезло. Что мне здесь не хватает?
  • 0
    Я использую очередь MQ в качестве JMS-провайдера. Я просто хочу настроить порты прослушивателя для mdb. Он запрашивает имя JNDI фабрики соединений и имя JNDI получателя. Скажите, где я могу получить эти имена? Нужно ли мне настраивать фабрику соединений в очереди? Я новичок в этом. Пожалуйста, помогите.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню