Невозможно настроить HermesJMS с WebSphere MQ 8 в RedHat Enterprise Linux

Я пытаюсь настроить HermesJMS v1.14 с WebSphereMQ v8.0, но я не могу. Я видел несколько учебных пособий и следовал им, хотя ни одна из них не была именно такой версией.

Это один из них http://www.hermesjms.com/demos/demo_mq.html.

Это то, что я сделал. Я скачал эту пробную версию MQ V8.0 Trial for Multiplatform Multilingual eAssembly, Я установил его, следуя этим инструкциям http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_8.0.0/com.ibm.mq.ins.doc/q008640_.htm?lang=en.

Затем я открываю HermesJMS и устанавливаю провайдера как в первой части http://www.hermesjms.com/demos/demo_mq.html, но библиотеки:

  • com.ibm.mq.commonservices.jar
  • com.ibm.mq.jar
  • com.ibm.mqjms.jar
  • com.ibm.mq.pcf.jar

Затем я нажимаю на Scan, это важно, потому что этот шаг должен загрузить все классы фляг, которые мы будем использовать позже.

Затем я создаю сеанс, используя только что настроенный загрузчик, и при изменении загрузчика комбо с классами должно обновляться с помощью фабрики соединений, в частности, я должен использовать com.ibm.mq.jms.MQQueueConnectionFactory, но он не появляется, похоже, предыдущий шаг сканирования не работает.

Я посмотрел в банки, и я знаю класс MQQueueConnectionFactory это внутри com.ibm.mq.jar,

Итак, есть ли какой-то шаг, который я забыл? Нужны ли мне другие библиотеки?

Не стесняйтесь спрашивать дополнительную информацию.

Заранее спасибо.

ОБНОВИТЬ:

Добавление дополнительной информации на основе ответа T.Rob

Вы не упомянули, что применили пакет Fix Pack. В 8.0.0.1-3 есть ряд исправлений Java, которые могут сделать вашу настройку более интересной, и которую вы бы хотели избежать.

Да, я использовал это, я забыл упомянуть, извините.

На этой же странице объясняется, что программа setmqjmsenv может использоваться для настройки среды.

Я не упоминал об этом, я использовал setmqenv настроить PATH переменная окружения.

РЕШЕНИЕ этой 1-й проблемы:

Я уже решил это, но я думаю, что нет "процедуры", чтобы сделать это, я нашел это в этой сети http://talksoa.blogspot.com.es/2013/12/configure-hermes-jms-to-connect.html

Подожди, нашел решение. Сначала вы должны выбрать имя группы classpath, в случае выше ее WMQ7, из выпадающего списка в средней панели рядом с 'Loader:' Затем вернитесь на первую панель и выберите IBM WebSphereMQ в плагине

Я сделал что-то подобное и вуаля! Класс появляется. Сейчас я пытаюсь настроить свойства:

  • Подключаемый модуль: IBM WebSphereMQ
  • Фабрика соединений: Класс -> com.ibm.mq.jms.MQQueueConnectionFactory
  • Свойство: hostName ->
  • Свойство: порт -> (мне пришлось изменить порт по умолчанию 1414)
  • Свойство: queueManager -> MY.QUEUE.MANAGER
  • Свойство: transportType -> 1

И когда я делаю Right button -> Discover Я получаю следующую ошибку:

ERROR hermes.browser.tasks.HermesBrowserTaskListener - MQJE001: Completion Code '2', Reason '2035'.

Я искал эту ошибку, и это похоже на ошибку авторизации, поэтому я сделал:

setmqaut -m MY.QUEUE.MANAGER -t qmgr -g <myUser> +all

myUser пользователь, которого я добавил mqm группа.

Надеюсь, ты сможешь мне помочь.

Благодарю.

4 ответа

Затем я открываю HermesJMS и устанавливаю провайдера, как в первой части http://www.hermesjms.com/demos/demo_mq.html, но библиотеки...

Возможно, вы захотите попробовать использовать спецификацию IBM для CLASSPATH как указано в том же руководстве по документации, которое вы связали выше. На их странице Переменные среды, используемые классами IBM MQ для JMS, объясняется, что в CLASSPATH и манифест тянет в других.

На той же странице также объясняется, что setmqjmsenv Программа может быть использована для настройки среды. Вы можете запустить его, затем записать настройки переменных среды и настроить Hermes для их наследования через явные настройки или через идентификатор службы, использованный для его запуска.

Кроме того, обязательно используйте предоставленные IBM инструменты, чтобы проверить, правильно ли установлен клиент и что вы можете подключиться к MQ с помощью зарекомендовавшего себя программного обеспечения. Было бы неудачно бороться с Гермесом в течение недели только для того, чтобы узнать, что прослушиватель MQ находится на другом порту или что вы неправильно написали название канала.

Вы не упомянули, что применили пакет Fix Pack. В 8.0.0.1-3 есть ряд исправлений Java, которые могут сделать вашу настройку более интересной, и которую вы бы хотели избежать.

Я скачал эту пробную версию MQ V8.0 Trial for Multiplatform Multilingual eAssembly...

Если вы перейдете на вики -страницу тега websphere-mq, вы найдете ссылки на MQ Advanced для разработчиков. Это полнофункциональная, не истекающая версия MQ, которую вы можете получить бесплатно. Пробная загрузка в конечном итоге истекает. Надеюсь, не до того, как Гермес заговорит с ним, но срок его действия истечет, как правило, в самый неподходящий момент.

Там тоже будет какой-то ссылка на пакеты исправлений, но вы можете также легко (да, это спорно) найти их, перейдя в IBM Fix Central и поиск.

Если вы открыты для использования другого инструмента, кроме HermesJMS, то вы можете попробовать JMSToolbox (из sourceforge). Его гораздо проще использовать, чем HermesJMS (ОК, мой совет необъективен, я автор JMSToolbox..lol)

Вместо того, чтобы делать проверку клиента необязательной при подключении - обычно ответ на все вопросы, как представляется, всегда отключает всю безопасность и аутентификацию - отредактируйте сеанс, добавив идентификатор пользователя и пароль. Как правило, это должен быть идентификатор пользователя, который вы входите в систему, в которой работает администратор очередей, и соответствующий пароль. (То есть тот, который вы использовали в качестве принципала в вашей команде setmqaut.)

Отредактируйте сеанс, установите флажок рядом с "user:" внизу и добавьте пользователя и пароль, примените и все готово.

Надеюсь это поможет.

Благодаря @Umapathy и @T.Rob.

Я мог бы найти журнал. Я отвечаю на свой вопрос всем, у кого такая же проблема. Это мой файл ошибок:

AMQ5540: Приложение 'hermes.browser.HermesBrowser' не предоставило идентификатор пользователя и пароль

ОБЪЯСНЕНИЕ: администратор очередей настроен на запрос имени пользователя и пароля, но ни один из них не был указан.

ДЕЙСТВИЕ: Убедитесь, что приложение предоставляет действительный идентификатор пользователя и пароль, или измените конфигурацию администратора очередей на НЕОБЯЗАТЕЛЬНО, чтобы разрешить приложениям подключаться, которые не предоставили идентификатор пользователя и пароль.

А потом я нашел этот Websphere MQ v8 - MQRC_NOT_AUTHORIZED - 2035

Так я и сделал:

ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS) AUTHTYPE(IDPWOS) CHCKCLNT(OPTIONAL)

И теперь я могу подключиться.

Спасибо за вашу помощь!

Другие вопросы по тегам