Учебник по JAX-WS
Java API for XML Web Services (JAX-WS) - это набор API для создания веб-сервисов в формате XML (SOAP). JAX-WS предоставляет множество аннотаций для упрощения разработки и развертывания как для клиентов веб-служб, так и для поставщиков веб-служб (конечных точек).
В этом руководстве приведены многочисленные пошаговые примеры и пояснения как для JAX-WS 2.0, так и для JAXWS 2.1.
Приятного изучения JAX-WS :)
Быстрый старт
Несколько примеров быстрого запуска JAX-WS 2.x.
Рис.: Связь JAX-WS -Image Source
-
JAX-WS hello world example – RPC Style
Учебное пособие, чтобы показать вам, как создать конечную точку веб-службы в стиле rpc с помощью JAX-WS и клиента веб-службы на Java, wsimport и Ruby. -
JAX-WS Hello World Example – Document Style
Учебное пособие, которое покажет вам, как создать конечную точку веб-службы в стиле документа с помощью JAX-WS, и покажет поток SOAP-конверта между клиентом и сервером. -
How to trace SOAP message in Eclipse IDE
Учебное пособие, чтобы показать вам, как включить этот «TCP / IP Monitor» в Eclipse IDE, а также перехватывать сообщения SOAP, генерируемые веб-службой. -
JAX-WS : wsimport tool example
Инструмент wsimport используется для синтаксического анализа существующего файла языка описания веб-служб (WSDL) и создания необходимых файлов (переносимых артефактов JAX-WS) для доступа клиента веб-службы к опубликованным веб-службам. -
JAX-WS : wsgen tool example
Инструмент wsgen используется для анализа существующего класса реализации веб-службы и создания необходимых файлов (переносимых артефактов JAX-WS) для развертывания веб-службы.
Приложение JAX-WS
Как обрабатывать вложения в JAX-WS 2.x.
-
JAX-WS attachment with MTOM
Полный пример на основе SOAP JAX-WS, показывающий, как использовать механизм оптимизации передачи сообщений (MTOM) и метод XML-Binary Optimized Packaging (XOP) для отправки двоичного вложения (изображения) из сервер клиенту и наоборот.
JAX-WS Handler
Обработчик SOAP - это перехватчик SOAP-сообщений, который может перехватывать входящее или исходящее SOAP-сообщение и манипулировать его значениями.
-
Part 1 : JAX-WS – SOAP handler in server side
В этой статье мы покажем вам, как создать обработчик SOAP и прикрепить его на стороне сервера, чтобы получить MAC-адрес в блоке заголовка SOAP из каждого входящего сообщения SOAP. И выполните проверку, чтобы разрешить доступ к этой опубликованной услуге только компьютеру с MAC-адресом «90-4C-E5-44-B9-8F». -
Part 2 : JAX-WS – SOAP handler in client side
В этой статье вы разработаете клиент веб-службы для доступа к службе, опубликованной в предыдущей статье, и присоедините обработчик для вставки MAC-адреса клиента в блок заголовка для каждого исходящего сообщения SOAP, которое отправляется. со стороны клиента. -
Part 3 : JAX-WS – SOAP handler testing for client and server side
Результат тестирования для двух вышеупомянутых статей об обработчиках SOAP.
Интеграция JAX-WS
Как интегрировать JAX-WS с веб-приложением и средой Spring.
-
JAX-WS + Java Web Application integration example
Здесь мы покажем вам, как интегрировать JAX-WS с веб-приложением Java. -
JAX-WS + Spring integration example
Здесь мы покажем вам, как интегрировать JAX-WS со средой Spring. -
Unable to locate Spring NamespaceHandler for XML schema namespace [http://jax-ws.dev.java.net/spring/servlet]
Распространенное сообщение об ошибке при интеграции JAX-WS со средой Spring.
Безопасность JAX-WS в Tomcat
Как обеспечить безопасность JAX-WS в Tomcat.
-
Deploy JAX-WS web services on Tomcat
Вот руководство, которое покажет вам, как развернуть веб-службы JAX-WS в контейнере сервлетов Tomcat. -
Deploy JAX-WS web services on Tomcat + SSL connection
Вот руководство, которое покажет вам, как развернуть веб-службы JAX-WS при включенном соединении Tomcat + SSL. -
Application Authentication with JAX-WS
Вот подробный пример, чтобы показать вам, как обрабатывать аутентификацию на уровне приложения с помощью JAX-WS. -
Container Authentication with JAX-WS + (Tomcat version)
Вот подробный пример, показывающий, как реализовать аутентификацию контейнера с помощью JAX-WS под Tomcat. -
java.security.cert.CertificateException: No name matching localhost found
-
SunCertPathBuilderException: не удалось найти действительный путь сертификации для запрошенной цели
Сообщение об ошибке JAX-WS
Некоторые распространенные сообщения об ошибках в разработке JAX-WS.
-
Metro в WebSphere 7 - несовместимое исключение com.ibm.xml.xlxp2.jaxb.JAXBContextImpl
-
Spring + jax-ws: «xxx» - это интерфейс, а JAXB не может обрабатывать интерфейсы.
-
Spring + jax-ws: "#xxx" не является допустимым значением для "NCName"
-
javax.xml.stream.XMLStreamException : ParseError at [row,col: [x, xx]]
-
Класс Wrapper package.jaxws.methodName не найден. Вы запускали APT для их генерации?
-
java.lang.ClassNotFoundException: com.sun.xml.ws.transport.http.servlet.WSServletContextListener
-
java.lang.ClassNotFoundException : com/sun/xml/bind/v2/model/annotation/AnnotationReader
-
java.lang.ClassNotFoundException : com/sun/xml/stream/buffer/XMLStreamBuffer
-
java.lang.ClassNotFoundException : com/sun/xml/ws/policy/PolicyException
-
java.lang.ClassNotFoundException : javax.xml.ws.soap.AddressingFeature$Responses
-
java.lang.ClassNotFoundException : org.jvnet.staxex.XMLStreamReaderEx
-
java.lang.ClassNotFoundException : org.glassfish.gmbal.ManagedObjectManager
-
java.lang.ClassNotFoundException : org.glassfish.external.amx.AMXGlassfish
-
java.lang.ClassNotFoundException: org.springframework.beans.factory.support.ReaderContext
-
java.lang.ClassNotFoundException: org.apache.xbean.spring.context.v2.XBeanNamespaceHandler
Рекомендации
-
http://java.sun.com/developer/technicalArticles/WebServices/high_performance/
-
http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/
-
http://www.ibm.com/developerworks/webservices/library/ws-docstyle.html
-
http://www.oracle.com/technology/sample_code/tech/java/j2ee/jintdemo/tutorials/webservices.html
-
http://www.oracle.com/technetwork/articles/javase/index-137171.html