| Беларусь, Минск | 
Обмен сообщениями с использованием WebSphere MQ: практическое введение
9.5. Рассылка сообщений по подписке в WebSphere MQ с помощью JMS
В этом разделе демонстрируется применение брокера публикации-подписки (publish/subscribe broker) WebSphere MQ с примерами кода для WebSphere MQ JMS (Java Message Service).
Каталог с исполняемыми файлами java и javac из JDK необходимо добавить к пути ОС.
Пример кода для WebSphere MQ JMS потребуется слегка изменить, а затем скомпилировать. Однако знать язык программирования Java для этого не обязательно.
9.5.1. Настройка среды JMS
Создайте на компьютере, на котором предполагается работать с примерами кода, каталог – в нем будут размещены все файлы и каталоги, необходимые для выполнения описанных ниже действий. Все команды и терминальные сеансы должны работать с этим каталогом.
Исполняющая среда Java Runtime Environment (JVM), в которой работают Java-приложения, ищет скомпилированные компоненты Java-приложений в каталоге class path, заданном соответствующей переменной окружения.
При установке WebSphere MQ в Windows путь к компонентам, необходимым для исполнения приложений WebSphere MQ JMS, автоматически добавляется к переменной пути к классам Java, а на платформах UNIX это придется сделать вручную с помощью текущей оболочки.
Далее предполагается, что независимо от платформы рабочий каталог добавлен в путь к классам Java.
Для этого выполните следующие действия (в каждом окне командной строки или терминальном окне, где будут выполняться описанные ниже упражнения).
- В Windows:- Перейдите в рабочий каталог, например:C: cd \wmq_redbook\jmspubsub 
- Выполните следующую команду, чтобы добавить путь к текущему каталогу в путь к классам Java:set CLASSPATH=%CLASSPATH%;. 
 
- Перейдите в рабочий каталог, например:
- В UNIX:- Перейдите в рабочий каталог, например так:cd ~/wmq_redbook/jmspubsub 
- Выполните следующую команду (с синтаксисом, принятым на вашей UNIX-платформе; не забудьте пробел между знаками "." и "/"):- В UNIX (кроме AIX 5L):. /opt/mqm/java/bin/setjmsenv 
- В AIX 5L:. /usr/mqm/java/bin/setjmsenv 
 
- В UNIX (кроме AIX 5L):
- Выполните следующую команду, чтобы добавить текущий каталог (а также дополнительный пакет Jar, не добавленный setjmsenv ) в путь к классам Java.- В UNIX (кроме AIX 5L):CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/jms.jar:. export CLASSPATH 
- В AIX 5L:CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/jms.jar:. export CLASSPATH 
 
- В UNIX (кроме AIX 5L):
 
- Перейдите в рабочий каталог, например так:
Exception in thread "main" java.lang.NoClassDefFoundError
- В UNIX (кроме AIX 5L):CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/com.ibm.mq.jar CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/com.ibm.mqjms.jar CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/connector.jar CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/jms.jar CLASSPATH=$CLASSPATH:/ opt/mqm/java/lib/jndi.jar CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/jta. jar CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/providerutil.jar CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/fscontext.jar CLASSPATH=$CLASSPATH:/opt/mqm/java/lib/ldap.jar CLASSPATH=$CLASSPATH:. export CLASSPATH 
- В AIX 5L:CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/com.ibm.mq.jar CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/com.ibm.mqjms.jar CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/connector.jar CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/jms.jar CLASSPATH=$CLASSPATH:/ usr/mqm/java/lib/jndi.jar CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/jta. jar CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/providerutil.jar CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/fscontext.jar CLASSPATH=$CLASSPATH:/usr/mqm/java/lib/ldap.jar CLASSPATH=$CLASSPATH:. export CLASSPATH 
 
                             
