Web-службы JAX-RPC |
|
|
![]() |
|
Настройка и запуск | Комментарии | Javadoc | Компоновка с помощью Ant | |
Web-службы рассматриваются в InfoCenter в разделе IBM WebSphere Web services. |
|
В примере AddressBook демонстрируется доступ к Web-службам различными способами. Он содержит два клиента и четыре версии bean-объекта AddressBook. Каждой из платформ Java 2 Standard Edition (J2SE) и Java 2 Enterprise Edition (J2EE) соответствует один клиент. Каждый из них использует четыре варианта bean-объекта AddressBook. Расположение исходного кодаИсходный код AddressBook находится в подкаталогах каталог-профайла/samples/src/WebServicesSamples. Код каждого из четырех bean-объектов EJB находится в отдельном подкаталоге, см. таблицу ниже. Код простого клиента J2SE находится в каталоге Clients/simpleClients/samples/address. Код приложения-клиента J2EE - в каталогеClients/applicationClients/AddressBookClient. Пользователи z/OS: Исходный код примеров недоступен для платформы z/OS, т.к. компоновка демонстрационных приложений на этой платформе не предусмотрена. В каждом из четырех вариантов bean-объектов демонстрируется различный подход к разработке приложений, работающих с Web-службами. Среди них есть два объекта EJB. При разработке первого объекта был сначала создан файл WSDL (Web Service Definition Language - Язык определения Web-служб), а затем транслирован в код Java с помощью утилиты WSDL2Java. В названиях артефактов, принадлежащих данному объекту EJB, содержится текст "W2JE". При разработке второго объекта EJB сначала был реализован сам объект EJB, а затем с помощью утилиты Java2WSDL был сгенерирован файл WSDL. С помощью файла WSDL сгенерированы файлы описания. В названиях артефактов этого объекта EJB присутствует текст "J2WE". Аналогично, в названиях артефактов двух объектов JavaBean содержится "J2WB" или "W2JB", в зависимости от способа их создания. В следующей таблице указаны сведения о bean-объектах AddressBook. | |
Порт | Каталог | Класс реализации | Демонстрирует |
---|---|---|---|
AddressBookW2JE | addrEJBTopDown | AddressBookSoapBindingImpl.java | Разработку объектов EJB, работающих с Web-службами, посредством создания файла WSDL и генерирования кода Java с помощью WSDL2Java. |
AddressBookJ2WE | addrEJBBottomUp | AddressBookBeanImpl.java | Разработку объектов EJB, работающих с Web-службами, посредством создания самого bean-объекта и генерации файла WSDL с помощью Java2WSDL, на основе которого создаются файлы описания. |
AddressBookJ2WB | addrBeanBottomUp | AddressBookBean.java | Разработку объектов JavaBean, работающих с Web-службами, посредством создания самого bean-объекта и генерации файла WSDL с помощью Java2WSDL, на основе которого создаются файлы описания. |
AddressBookW2JB | addrBeanTopDown | AddressBookBean.java | Разработку объектов JavaBean, работающих с Web-службами, посредством создания файла WSDL и генерирования кода Java с помощью WSDL2Java. |
Каталоги, указанные в таблице, находятся в каталог-профайла/samples/src/WebServicesSamples.
Все реализации службы AddressBook поддерживают операцию getAddressFromName. Она возвращает клиенту статический ответ. Базы данных для хранения адресов не предусмотрено, т.к. цель данного примера - показать взаимосвязь между bean-объектом и Web-службой.
Все варианты службы AddressBook хранятся в файле WebServicesSamples.ear. Т.к. они имеют уникальные корневые контексты и имена файлов jar, возможна их одновременная развертка. Кроме того, классы реализации объектов EJB имеют уникальные имена и отличны от классов объектов JavaBean. Это гарантирует то, что программа загрузки классов найдет нужный класс реализации.
В примере содержатся клиенты для J2SE и J2EE. Каждый из них использует четыре варианта объекта AddressBook.
Отношения между четырьмя bean-объектами, установленными на сервере, можно увидеть в файле WSDL клиента, т.к. последний может работать со всеми bean-объектами. В файле WSDL определяется одна служба, AddressBookService, с четырьмя портами. Файл AddressBook.wsdl клиента находится в каталоге примеров, src/WebServicesSamples/Clients/applicationClients/META-INF.