- •1)Java тілінің негізгі ерекшеліктері және қарапайым түрлері.
- •2) Java тіліндегі программа құрылымы. Меншіктеу операторы.
- •3)Java тіліндегі күрделі түрлер
- •4) Тармақталу операторлары:
- •5) Таңдау операторы
- •6) Қайталану операторы
- •Do while
- •7) Класс құру.Класс конструкторы
- •8) Класс әдістері. Әдістерді қайталап анықтау.
- •Ключевое слово final
- •Класс final
- •Метод final
- •10) Бір өлшемді массивтер
- •Var «Массив атауы»:array[x1]of x2;
- •Var х, ү: array [1..5] of Byte;
- •Массив элементтерін ендіру және шығару
- •Көп өлшемді массив
- •11)Массивтердің анықталу жолдары. Массив индекстері.
- •12) Туынды кластар.Қөріну және қолдану түрлері
- •13)Абстракт класс
- •15) Tomcat Web сервирі
- •16. Web программасының құрылымы
- •17. Сервлеттердің құрылымы
- •18. Сервлет әдістері
- •19. Web.Xml файлы
- •20. Создание jsp страниц в Java
- •21. Mysql деректер қорын басқару жүйесінің жұмыс ортасын қолдану
- •22. Jdbc драйверлерін қолдану
- •23. Sql командаларын орындау
- •24. JavaBeans құрылымының қолданылуы
- •26. Wsdl: Web сервистерді сипаттау.
- •27. Apache Axis2 пакеті
- •29.Soap хаттамасы
27. Apache Axis2 пакеті
Что такое «Ось» - палка от колес, а если в контексте механизма Web-сервисов, это Axis2 (Axis – ось eng.). Проект прославленной группы разработчиков Apache или «Java-образная» реализация Фреймворка технологии Web-сервисов. В данной статье, я хочу, на примере использования, показать способ разработки приложений с Web-сервисной архитектурой. В предыдущей статье Что такое web-сервисы и с чем их едят, я попытался показать и описать механизм взаимодействия приложений по средствам клиент-серверной технологии - Web-сервисов. Теперь для более детального изучения этого «механизма», я хочу привести пример интеграции приложения, а точнее двух приложений: клиента и сервера, по средствам web-cервис движка или можно сказать сервера - Apache Axis2. Судя по названию сервера это второе поколение продукта от Apache основанное на наработках при создании первого Axis 1.0, но с совершенно отличающейся архитектурой.
Необходимые инструменты И так для работы нам понадобится: jdk-1.5 (или выше) Web-север Tomcat 6.0– http://tomcat.apache.org/download-60.cgi Axis2 1.3 - http://ws.apache.org/axis2/download.cgi Ant 1.6.5 - http://ant.apache.org/bindownload.cgi
Так как мы собираемся написать java приложение, соответственно нам необходимо иметь установленную и настроенную JDK. При написания статьи я использовал JDK версии 1.5.0_10. Процесс установки и настройки java в системе описан мною, в соответствующей статье Установка и настройка java.
Axis2 является серверным приложением, поэтому его можно запускать в отдельном процессе, но так как в большинстве случаев web-сервис архитектура связанна с нагрузками и требует кластеризации и маршрутизации(процесс разделения нагрузок на сервер), по этому его (Axis2) разворачивают как web-приложение на севере приложений EAS (Enterprise Application Server), в данном случае для простоты будем использовать Apache Tomcat 6.0. Процесс установки и настройки Tomcat web-севера, описан мною, в соответствующей статье Установка и Tomcat web-сервера.
28. jax - ws web сервисін құру
Java API for XML Web Services (JAX-WS) — это прикладной программный интерфейс языка Java для создания веб-служб, являющийся частью платформыJava EE. JAX-WS является заменой технологии JAX-RPC, предоставляя более документо-ориентированную модель сообщений и упрощая разработку[1] веб-служб за счёт использования аннотаций, впервые появившихся в Java SE 5. Технология JAX-WS является стандартом и описана в JSR 224. Разработка Web-сервиса
Подход первичности контракта по сравнению с подходом первичности кода
Хорошим способом знакомства с JAX-WS является разработка Web-сервиса. Web-сервис можно разработать двумя способами:
Первичность контракта. Начинаем с WSDL-контракта и генерируем Java-класс для реализации сервиса.
Первичность кода. Начинаем с Java-класса и с помощью аннотаций генерируем WSDL-файл и Java-интерфейс.
Подход с первичностью WSDL требует хорошего понимания WSDL и XSD (XML Schema Definition) для определения форматов сообщений. Если вы являетесь новичком в Web-сервисах, сначала лучше придерживаться принципа первичности кода. Этот подход и будет использоваться в данном учебном руководстве при разработке Web-сервисов.
Разработка Web-сервисов исходя из кода
При использовании подхода первичности кода работа начинается с Java-класса или классов, реализующих функциональные возможности, которые вы хотите отобразить в виде сервисов. Такой подход особенно полезен, когда Java-реализации уже существуют и необходимо лишь отобразить их в виде сервисов.
Разработка Web-сервиса обработки заказов
Давайте начнем с создания Web-сервиса обработки заказов, принимающего информацию о заказе, месте доставки, заказываемых позициях и, в конечном итоге, генерирующего в качестве ответа идентификатор подтверждения (confirmation ID). Код этого сервиса представлен в листинге 1. Это макетная реализация, выводящая идентификатор клиента и количество заказываемых позиций на консоль, а затем возвращающая фиктивный идентификатор заказа A1234. (Исходный код полного приложения можно загрузить, используя ссылки, приведенные в разделе "Загрузка" данного руководства.) Извлеките исходный код на диск C в папку JAXWS-Tutorial. Эта папка содержит исходный код, показанный в листинге 1.
Листинг 1. Реализация Web-сервиса обработки заказов
package com.ibm.jaxws.tutorial.service;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import com.ibm.jaxws.tutorial.service.bean.OrderBean;
//JWS-аннотация, указывающая, что имя portType Web-сервиса
//равно "OrderProcessPort", имя сервиса равно
//"OrderProcess", а targetNamespace, использующийся в сгенерированном
//WSDL, равен "http://jawxs.ibm.tutorial/jaxws/orderprocess".
@WebService(serviceName = "OrderProcess",
portName = "OrderProcessPort",
targetNamespace = "http://jawxs.ibm.tutorial/jaxws/orderprocess")
//JWS-аннотация, определяющая отображение сервиса на
//протокол SOAP-сообщений. В частности, она определяет, что SOAP-сообщения
//являются литералами документа.
@SOAPBinding(style=SOAPBinding.Style.DOCUMENT,use=SOAPBinding.Use.LITERAL,
parameterStyle=SOAPBinding.ParameterStyle.WRAPPED)
public class OrderProcessService {
@WebMethod
public OrderBean processOrder(OrderBean orderBean) {
// Выполнить обработку...
System.out.println("processOrder called for customer"
+ orderBean.getCustomer().getCustomerId());
// Заказанными позициями являются
if (orderBean.getOrderItems() != null) {
System.out.println("Number of items is "
+ orderBean.getOrderItems().length);
}
//Обработать заказ.
//Установить идентификатор заказа.
orderBean.setOrderId("A1234");
return orderBean;
}
}
OrderBean хранит информацию о заказе, как показано в листинге 2. В частности, он содержит ссылки на клиента, заказанные позиции и объект адреса доставки.
