Address Book - Настройка и запуск


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

Клиенты AddressBook представлены в двух версиях - для Java 2 Standard Edition (J2SE) и Java 2 Enterprise Edition (J2EE), управляемой контейнером. Для применения всех возможностей контейнеров J2EE выберите вторую.

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

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

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

Перед запуском примера необходимо убедиться в том, что сервер для его выполнения запущен.

Клиенты AddressBook представлены в двух версиях - внешняя для J2SE и Java 2 Enterprise Edition (J2EE), управляемой контейнером. Каждый из них использует четыре варианта bean-объекта Web-службы AddressBook. Bean-объекты AddressBook возвращают фиксированное значение и не требуют соединения с Internet.

Запуск клиента AddressBook для J2SE
Запуск клиента AddressBook для J2EE

Запуск клиента AddressBook для J2SE

В клиенте AddressBook для J2SE демонстрируется запрос адреса у bean-объекта Web-службы AddressBook. Его исходный код находится в каталоге каталог-профайла/samples/src/WebServicesSamples/Clients/simpleClients/samples/address.

При запуске AddressBookClient в текущем каталоге должен присутствовать файл AddressBook.wsdl. Распакуйте файл AddressBook.wsdl из архива simpleClients.jar в каталог, в котором будет запускаться пример. Архив simpleClients.jar находится в каталоге install_root/samples/lib/WebServicesSamples.

Клиент J2SE дважды проходит по всем bean-объектам Web-службы AddressBook на сервере. При первом проходе вызывается метод getPort для выделения уникальных портов для всех bean-объектов EJB демонстрационного приложения. Для каждого порта вызывается метод getAddressFromName. Второй проход начинается произвольно с одного из портов, затем для каждой из четырех возможных конечных точек задается адрес конечной точки портов. Для каждого порта вызывается метод getAddressFromName.

Общие инструкции по запуску клиента WebSphere содержатся в разделе о разработке простого клиента в InfoCenter.

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

  1. Запустите сервер приложений.
  2. Откройте окно командной строки.
  3. Введите следующие команды:

    Платформы Windows:

    cd каталог-профайла\bin
    setupCmdLine
    cd установочный-каталог\bin
    setupCmdLine

    Платформы Linux, UNIX и z/OS:

    cd каталог-профайла/bin
    . ./setupCmdLine.sh
    cd установочный-каталог/bin
    . ./setupCmdLine.sh

    Платформы iSeries:

    cd каталог-профайла/bin
    . ./setupCmdLine
    cd установочный-каталог/bin
    . ./setupCmdLine

  4. Перейдите в каталог с файлом AddressBook.wsdl.
  5. Запустите следующую команду:

    Платформы Windows:

    "%JAVA_HOME%\bin\java" %WAS_LOGGING% -classpath "%WAS_CLASSPATH%;%WAS_HOME%\samples\lib\WebServicesSamples\simpleClients.jar;%WAS_HOME%\runtimes\com.ibm.ws.webservices.thinclient_7.0.0.jar" samples.address.AddressBookClient [<хост> <порт>]

    Платформы Linux, UNIX и z/OS:

    "$JAVA_HOME/bin/java" $WAS_LOGGING -classpath "$CLASSPATH:$WAS_CLASSPATH:$WAS_HOME/samples/lib/WebServicesSamples/simpleClients.jar:$WAS_HOME/runtimes/com.ibm.ws.webservices.thinclient_7.0.0.jar" samples.address.AddressBookClient [<хост> <порт>]

    Платформы iSeries:

    java $JAVA_PARM -classpath "$CLASSPATH:$WAS_CLASSPATH:$WAS_HOME/samples/lib/WebServicesSamples/simpleClients.jar:$WAS_HOME/runtimes/com.ibm.ws.webservices.thinclient_7.0.0.jar" samples.address.AddressBookClient [<хост> <порт>]

    где:
    <хост> - адрес конечной точки службы. Значение по умолчанию - localhost.
    <порт> - порт конечной точки службы. Значение по умолчанию - 9080.

    Ниже приведен вывод клиента AddressBook, завершившего работу без ошибок:

    
    C:\>"%JAVA_HOME%\bin\java" %WAS_LOGGING% -classpath "%WAS_CLASSPATH%;%WAS_HOME%\samples\lib\WebServicesSamples\simpleClients.jar;%WAS_HOME%\runtimes\com.ibm.ws.webservices.thinclient_7.0.0.jar" samples.address.AddressBookClient
    >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JE
    >> Response is:
    	1 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WE
    >> Response is:
    	2 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WB
    >> Response is:
    	3 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JB
    >> Response is:
    	4 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >>
    >> Get port AddressBookJ2WB
    >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookW2JE/services/AddressBook
    >> Querying address for 'Purdue Boilermaker'
    >> Response is:
    	1 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookJ2WE/services/AddressBook
    >> Querying address for 'Purdue Boilermaker'
    >> Response is:
    	2 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookJ2WB/services/AddressBook
    >> Querying address for 'Purdue Boilermaker'
    >> Response is:
    	3 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Set port AddressBookJ2WB's endpoint to http://localhost:9080/AddressBookW2JB/services/AddressBook
    >> Querying address for 'Purdue Boilermaker'
    >> Response is:
    	4 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    
    

Запуск клиента AddressBook для J2EE

Версия клиента AddressBook для J2EE аналогична простой для J2SE. Она принимает такие же bean-объекты Web-службы AddressBook, но из контейнера J2EE с помощью команды launchClient.

Клиент J2EE проходит по всем bean-объектам Web-службы AddressBook на сервере. Для поиска службы AddressBook используется команда lookup JNDI, в для выделения уникальных портов для каждого из четырех bean-объектов AddressBook вызывается метод getport. Для каждого порта вызывается метод getAddressFromName.

В инструкциях ниже установочный-каталог следует заменить на каталог установки WebSphere.

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

  1. Запустите сервер приложений.
  2. Откройте окно командной строки.
  3. Введите следующие команды:

    Платформы Windows:

    cd <каталог-профайла>\bin
    setupCmdLine

    Платформы Linux, UNIX и z/OS:

    cd <каталог-профайла>/bin
    . ./setupCmdLine.sh

    Платформы iSeries:

    cd <каталог-профайла>/bin
    . ./setupCmdLine

    где <каталог-профайла> - каталог, в котором установлен профайл.
  4. Перейдите в каталог установочный-каталог/samples/lib/WebServicesSamples
    Где:
    установочный-каталог - каталог установки WebSphere Application Server или профайла, в случае перекомпоновки примера.
  5. Замените установочный-каталог каталогом установки WebSphere и выполните следующую команду:

    Платформы Windows:

    установочный-каталог\bin\launchClient ApplicationClients.ear -CCjar=AddressBookClient.jar [<хост> <порт>]

    Платформы Linux, UNIX и z/OS:

    установочный-каталог/bin/launchClient.sh ApplicationClients.ear -CCjar=AddressBookClient.jar [<хост> <порт>]

    Платформы iSeries:

    установочный-каталог/bin/launchClient ApplicationClients.ear -CCjar=AddressBookClient.jar [<хост> <порт>]

    где:
    <хост> - адрес конечной точки службы. Значение по умолчанию - localhost.
    <порт> - порт конечной точки службы. Значение по умолчанию - 9080.


    Ниже приведен вывод клиента AddressBook, завершившего работу без ошибок:

    
    C:\WebSphere\AppServer\samples>\WebSphere\AppServer\bin\launchClient \WebSphere\AppServer\samples\lib\WebServicesSamples\ApplicationClients.ear -CCjar=AddressBookClient.jar
    IBM WebSphere Application Server, выпуск 7.0
    J2EE Application Client Tool
    Copyright IBM Corp., 1997-2008
    WSCL0012I: Processing command line arguments.
    WSCL0013I: Initializing the J2EE Application Client Environment.
    [3/29/06 14:47:51:062 CST] 0000000a  W UOW=null source=com.ibm.ws.ssl.config.SSLConfig org=IBM prod=WebSphere component=Application Server thread=[P=269328:O=0:CT]
              CWPKI0041W: One or more key stores are using the default
    password.
    WSCL0035I: Initialization of the J2EE Application Client Environment has
    completed.
    WSCL0014I: Invoking the Application Client class com.ibm.websphere.samples.webservices.addr.AddressBookClient
    >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JE
    >> Response is:
    	1 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WE
    >> Response is:
    	2 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Querying address for 'Purdue Boilermaker' using port AddressBookJ2WB
    >> Response is:
    	3 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    >> Querying address for 'Purdue Boilermaker' using port AddressBookW2JB  
    >> Response is:
    	4 University Drive
    	West Lafayette, IN 47907
    	Phone: (765) 555-4900
    
    

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