Web-службы JAX-RPC |
|
|
![]() |
|
Настройка и запуск | Комментарии | Javadoc | Компоновка с помощью Ant |
Начало работы |
Расположение исходного кода |
Примечания к коду |
В этом примере демонстрируется переход с Simple Object Access Protocol (SOAP) к программному интерфейсу Java(TM) для RPC, основанного на XML (JAX-RPC). В комментариях класса клиента GetQuote.java из примера StockQuote указаны изменения, требуемые для перехода с Apache SOAP на JAX-RPC Dynamic Invocation Interface (DII), реализуемый объектом EJB Web-службы. Клиент Apache SOAP доступен в WebSphere Application Server версий 4.0 и 5.0. Для подробностей обратитесь к исходному коду GetQuote.java.
Для реализации Web-службы в приложении Stock Quote используется объект EJB. В пример включены клиент J2SE, samples.stock.GetQuote, и J2EE, com.ibm.websphere.samples.webservices.stock.GetQuoteClient.
Код Java клиента J2SE GetQuote находится в каталог-профайла/samples/src/WebServicesSamples/Clients/simpleClients/samples/stock.
Код Java EJB-приложения Stock Quote находится в каталог-профайла/samples/src/WebServicesSamples/stockEJB.
Код Java клиента J2EE GetQuote находится в каталог-профайла/samples/src/WebServicesSamples/Clients/applicationClients/getQuoteClient/com/ibm/websphere/samples/webservices/stockClient.
Пользователи z/OS: Исходный код примеров недоступен для платформы z/OS, т.к. компоновка демонстрационных приложений на этой платформе не предусмотрена.
Наибольший интерес в коде EJB-приложения Stock Quote представляет реализация объекта EJB. Он находится в файле StockQuoteBean.java. При запуске клиента с указанием действительного идентификатора биржи производится попытка соединения со службой http://services.xmethods.net/axis/getQuote для получения текущих биржевых цен. В случае ошибки клиенту возвращается -1.0, иначе - текущие цены. Если в качестве идентификатора биржи указано XXX, возвращается статическая цена, 55.25.
Клиент J2SE GetQuote позволяет сравнить JAX-RPC с более ранним SOAP. Для подробностей обратитесь к исходному коду GetQuote в каталоге simpleClients/samples/stock.