Настройка Ping и Echo


Запуск примера
Выполнение примера простого клиента
Включение надежного обмена сообщениями и защиты

Примеры Ping и Echo представляют собой простые Web-службы JAX-WS.

Пример Ping демонстрирует выполнение односторонней операции. Службе передается простое строковое значение. После соединения со службой операция клиента считается выполненной. Пример содержит две конечные точки: одна использует SOAP 1.1, вторая - SOAP 1.2.

Пример Echo демонстрирует выполнение двусторонней операции. Службе передается простое строковое значение. Служба добавляет к строке идентификатора свое значение и возвращает его клиенту. Пример содержит две конечные точки: одна использует SOAP 1.1, вторая - SOAP 1.2. Кроме того, пример Echo демонстрирует применение синхронной и асинхронной моделей программирования, а также синхронную и асинхронную передачу данных:


Конечные точки примера службы
URI Описание
http://localhost:9080/WSSampleSei/PingService
Пример службы Ping с использованием SOAP 1.1
http://localhost:9080/WSSampleSei/PingService12
Пример службы Ping с использованием SOAP 1.2
http://localhost:9080/WSSampleSei/EchoService
Пример службы Echo с использованием SOAP 1.1
http://localhost:9080/WSSampleSei/EchoService12
Пример службы Echo с использованием SOAP 1.2

Номер порта по умолчанию - 9080. Если установка выполняется в профайле, отличном от AppSrv01, то применяется другой номер порта.



Настройка примера

Для настройки примера Ping и Echo установите приложение, демонстрирующее применение Web-служб Jax-WS, на сервере. Инструкции приведены в разделе Перекомпоновка и развертывание файла JaxWSServicesSamples.ear .

Запуск примера

Перед запуском клиентов убедитесь, что сервер приложений запущен.

Пример Ping и Echo содержит две службы: Ping и Echo.

Запуск примера Ping и Echo

Пример Ping демонстрирует выполнение односторонней служебной транзакции. Исходный код примера расположен в каталоге каталог-профайла/samples/src/JaxWSServicesSamples/SampleClientSei.

Пример Echo демонстрирует выполнение двусторонней служебной транзакции. Исходный код примера расположен в каталоге каталог-профайла/samples/src/JaxWSServicesSamples/SampleClientSei.

Для запуска сервлета клиента Ping и Echo из WebSphere Application Server выполните следующие действия:

  1. Запустите сервер приложений.
  2. Щелкните на ссылке Запустить.

Запуск примера простого клиента Ping и Echo

Пример Ping и Echo простого клиента аналогичен сервлету клиента Ping и Echo. Этот пример обращается к тем же объектам EJB Web-служб Ping и Echo, однако использует файл JAR, требующий, чтобы в пути к классам был указан простой клиент для JAX-WS вместе с файлом JAR WebSphere Application.

Архив WSSampleClientSei.jar находится в каталоге samples/lib/JaxWSServicesSamples.

Пример Ping и Echo простого клиента создает JAX-WS Proxy для Web-службы Ping или Echo на основе указанных параметров. Затем Proxy обращается к конечной точке службы. Пример Echo ожидает ответа.

Далее переменная каталог-сервера-приложений - это установочный каталог сервера приложений.

Для запуска простого клиента Ping и Echo из WebSphere Application Server выполните следующие действия, в зависимости от используемой операционной системы:

  1. Запустите сервер приложений.
  2. Откройте окно командной строки.
  3. Перейдите в каталог JaxWSServicesSamples.

    В операционных системах Windows:

    cd app_server_root\samples\bin\JaxWSServicesSamples

    В системах AIX, Linux и z/OS:

    cd app_server_root/samples/bin/JaxWSServicesSamples

    В операционных системах iSeries:

    cd app_server_root/samples/bin/JaxWSServicesSamples

  4. Запустите пример Ping и Echo простого клиента.

    В операционных системах Windows:

    runSampleSei.bat -h имя-хоста -p порт -f суффикс-url -m сообщение -s служба -t тайм-аут -w асинхр-канал -c счетчик -1 -2

    В системах AIX, Linux и z/OS:

    ./runSampleSei.sh -h имя-хоста -p порт -f суффикс-url -m сообщение -s служба -t тайм-аут -w асинхр-канал -c счетчик -1 -2

    В операционных системах iSeries:

    ./runSampleSei -h имя-хоста -p порт -f суффикс-url -m сообщение -s служба -t тайм-аут -w асинхр-канал -c счетчик -1 -2

    Возможные параметры:
    -h <имя-хоста> - имя хоста. Значение по умолчанию: localhost.
    -p <порт> - номер порта. Значение по умолчанию: 9080.
    -f <суффикс-url> - контекст конечной точки службы. Значение по умолчанию - /WSSampleSei/EchoService.
    -m <сообщение> - текст сообщения. Значение по умолчанию - hello. Если сообщение содержит пробелы, заключите его в кавычки.
    -c счетчик - задает число выполняемых транзакций. Значение по умолчанию - 1.
    -1 указывает, что применяется SOAP 1.1. Значение по умолчанию - SOAP 1.1.
    -2 указывает, что применяется SOAP 1.2.

    Следующий пример демонстрирует запуск клиента Ping и Echo в системе Windows:


    runSampleSei.bat -p 9081
    Aug 8, 2007 7:01:00 PM com.ibm.ws.ssl.config.SSLConfigManager
    INFO: ssl.disable.url.hostname.verification.CWPKI0027I
    >> CLIENT: SEI Async to http://localhost:9081/WSSampleSei/EchoService
    [WAShttpAsyncResponseListener] listening on port 4733
    >> CLIENT: SEI Async invocation complete.
    >> CLIENT: SEI Async response is: JAX-WS==>>HELLO


Более детальная информация о том, каким образом работают клиент и приложение, содержится в комментариях к службе Ping и Echo, кроме того доступен исходный код Java.

Дополнительная информация о клиентах Web-служб приведена в документации по разработке и развертыванию клиентов Web-служб в Библиотеке WebSphere Application Server Information Center.

Включение надежного обмена сообщениями и защиты

Сценарии набора стратегий
Применение QoS к примеру Ping и Echo простого клиента

Сценарии набора стратегий

Наборы стратегий служат для применения Quality of Service (QoS), например ReliableMessaging и SecureConversation. Наборы стратегий, прикрепленные к приложению, определяют уровень QoS для данного приложения. Предусмотрены наборы стратегий для WS-ReliableMessaging (WS-RM), WS-SecureConversation (WS-SC) и WS-I Reliable Secure Profile (RSP), активируемые с помощью группы сценариев. В состав RSP входят WS-RM и WS-SC. Это примеры сценариев. Наборы стратегий можно активировать также с помощью административной консоли. Эти сценарии могут работать только с примерами приложений. В следующей таблице перечислены сценарии для набора стратегий.

Сценарии для систем Windows
Имя файла Описание
enableRMQoS.bat Включить WS-ReliableMessaging версии 1.1
enableRM1QoS.bat Включить WS-ReliableMessaging версии 1.0
enableSCQoS.bat Включить WS-SecureConversation
enableRSPQoS.bat Включить WS-ReliableMessaging и WS-SecureConversation
enableWSAQoS.bat Включить WS-Addressing
disableRMQoS.bat Выключить WS-ReliableMessaging версии 1.1
disableRM1QoS.bat Выключить WS-ReliableMessaging версии 1.0
disableSCQoS.bat Выключить WS-SecureConversation
disableRSPQoS.bat Выключить WS-ReliableMessaging и WS-SecureConversation
disableWSAQoS.bat Выключить WS-Addressing

Сценарии для таких систем, как AIX, Linux и z/OS
Имя файла Описание
enableRMQoS.sh Включить WS-ReliableMessaging версии 1.1
enableRM1QoS.sh Включить WS-ReliableMessaging версии 1.0
enableSCQoS.sh Включить WS-SecureConversation
enableRSPQoS.sh Включить WS-ReliableMessaging и WS-SecureConversation
enableWSAQoS.sh Включить WS-Addressing
disableRMQoS.sh Выключить WS-ReliableMessaging версии 1.1
disableRM1QoS.sh Выключить WS-ReliableMessaging версии 1.0
disableSCQoS.sh Выключить WS-SecureConversation
disableRSPQoS.sh Выключить WS-ReliableMessaging и WS-SecureConversation
disableWSAQoS.sh Выключить WS-Addressing

Сценарии для системы i5/OS
Имя файла Описание
enableRMQoS Включить WS-ReliableMessaging версии 1.1
enableRM1QoS Включить WS-ReliableMessaging версии 1.0
enableSCQoS Включить WS-SecureConversation
enableRSPQoS Включить WS-ReliableMessaging и WS-SecureConversation
enableWSAQoS Включить WS-Addressing
disableRMQoS Выключить WS-ReliableMessaging версии 1.1
disableRM1QoS Выключить WS-ReliableMessaging версии 1.0
disableSCQoS Выключить WS-SecureConversation
disableRSPQoS Выключить WS-ReliableMessaging и WS-SecureConversation
disableWSAQoS Выключить WS-Addressing


Ниже приведена процедура запуска сценариев надежного обмена сообщениями в системах Windows. Процедура запуска сценариев в одной операционной системе аналогична.

  1. Откройте командную строку с помощью меню Пуск: Пуск > Выполнить. Введите cmd.
  2. Перейдите в каталог каталог-сервера-приложений/samples/bin/JaxWSServicesSamples. Например: cd C:/Program Files/IBM/WebSphere/AppServer/samples/bin/JaxWSServiceSamples
  3. Запустите сценарии надежного обмена сообщениями.
  4. (Дополнительно) Укажите имя профайла, ячейки, узла или сервера для запуска сценариев надежного обмена сообщениями или защиты. Для включения или выключения сценариев предусмотрено четыре необязательных параметра:

    Следующий пример демонстрирует запуск сценария Включить WS-ReliableMessaging с параметрами profile, cell и node:

    enableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

    Следующий пример демонстрирует запуск сценария Выключить WS-ReliableMessaging с параметрами profile, cell и node:

    disableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

  5. Дополнительные параметры командной строки можно настроить. Если на сервере включена административная защита, необходимо указать ИД пользователя и пароль, иначе сценарий не будет выполнен, например:
    ./enableRMQoS.sh -user ИД-пользователя -password пароль
  6. Убедитесь, что примеры приложений запущены правильным образом. Если появилось предупреждающее сообщение, возможно, приложения запущены неверно. Приложения можно перезапустить с помощью административной консоли.  

Применение QoS к примеру Ping и Echo простого клиента

Во время тестирования примера Ping и Echo простого клиента с наборами стратегий QoS следует придерживаться следующих рекомендаций.
  1. Примените QoS к приложениям, следуя инструкциям в разделе Сценарии набора стратегий.
  2. Отредактируйте сценарий runSampleSei с учетом используемой операционной системы.
  3. Для применения стратегий WS-I RSP и SecureConversation добавьте следующую строку в файл идентификации Java (JAAS):

    В операционных системах Windows:

    set JAASLOGIN=-Djava.security.auth.login.config=<каталог-профайла>/properties/wsjaas_client.conf

    В системах AIX, Linux и z/OS:

    export JAASLOGIN=-Djava.security.auth.login.config=<каталог-профайла>/properties/wsjaas_client.conf

    Здесь каталог-профайла обозначает каталог сервера, в котором расположен профайл, например:
    set JAASLOGIN=-Djava.security.auth.login.config=C:/IBM/WebSphere/profiles/AppSrv02/properties/wsjaas_client.conf

  4. Измените путь к классам.

    В операционных системах Windows:

    set CLASSPATH=%THIN_JAR%;./WSSampleClientSei.jar;.

    В системах AIX, Linux и z/OS:

    export CLASSPATH=${THIN_JAR}:./WSSampleClientSei.jar:.

    Примечание: Добавьте точку (.) указан символ "." Точка необходима коду, загружающему набор стратегий, для нахождения каталога META-INF. Не удаляйте этот символ.

  5. Добавьте <JAASLOGIN> и -DUSER_INSTALL_ROOT="<каталог-профайла>" в команду Java.

    В операционных системах Windows:

    java %JAASLOGIN% -DUSER_INSTALL_ROOT= "<каталог-профайла>" -cp "%CLASSPATH%" com.ibm.was.wssample.sei.cli.SampleClient %*

    В системах AIX, Linux и z/OS:

    java ${JAASLOGIN} -DUSER_INSTALL_ROOT="<каталог-профайл>" -cp "${CLASSPATH} " com.ibm.was.wssample.sei.cli.SampleClient $@

  6. Создайте каталог META-INF в папке каталог-сервера-приложений/samples/bin/JaxWSServicesSamples.
  7. Скопируйте папку PolicySets из каталога каталог-профайла/config/cells/CELL_NAME/ в каталог каталог-сервера-приложений/samples/bin/JaxWSServicesSamples/META-INF.
  8. Скопируйте подкаталог bindings и файл clientPolicyAttachment.xml из каталога каталог-профайла/config/cells/ ячейка/applications/JaxWSServicesSamples.ear/deployments/JaxWSServicesSamples/META-INF в каталог каталог-сервера-приложений/samples/bin/JaxWSServicesSamples/META-INF. Необходимо скопировать все содержимое подкаталога bindings, например SecureConversationClientBinding или RAMP_client_default_bindings.
  9. Перейдите в каталог каталог-сервера-приложений/samples/bin/JaxWSServicesSamples и выполните пример.