Servicios web para la especificación Java EE

La especificación Servicios web para Java™ EE (Java Platform, Enterprise Edition) define el modelo de programación y la arquitectura de tiempo de ejecución para implementar servicios web basados en el lenguaje Java. Otro nombre para la especificación Servicios web para Java EE es la especificación JSR (Java Specification Requirements) 109. La especificación incluye estándares abiertos para desarrollar e implementar servicios web.

La especificación Web Services for Java EE se basa en la tecnología Java EE y da soporte al modelo de programación JAX-WS (API Java para servicios web XML) y JAX-RPC (API Java para RPC basadas en XML) para servicios web y clientes de tal forma que es interoperable y transferible entre servidores de aplicaciones en entornos escalabes y seguros. Esta especificación se basa en estándares de la industria para servicios web, incluido WSDL (Web Services Description Language) y SOAP, y describe el desarrollo y despliegue de servicios web.

La tecnología Java EE se puede integrar con los servicios web de varias formas. Puede exponer los componentes Java EE como servicios web, por ejemplo, los JavaBeans y los enterprise beans. Al exponer los componentes Java EE como servicios web, los clientes escritos en código Java o los clientes de servicios web existentes que no estén escritos en código Java pueden acceder a estos servicios. Los componentes Java EE también pueden actuar como clientes de servicios web.

La especificación Servicios web para Java EE es la plataforma preferida en la programación basada en web ya que proporciona estándares abiertos que permiten varios tipos de lenguajes, sistemas operativos y software para comunicarse sin interrupciones en Internet.

Para que una aplicación Java actúe como cliente de servicio web, debe existir una correlación entre el archivo WSDL y la aplicación Java. Para las aplicaciones JAX-WS, la correlación se define mediante anotaciones. Opcionalmente, puede utilizar el descriptor de despliegue webservices.xml para especificar la ubicación del archivo WSDL y alterar temporalmente el valor definido en la anotación @WebServices. Para aplicaciones JAX-RPC, debe definir el archivo de correlación JAX-RPC. Para obtener más información sobre la correlación que se define entre el archivo WSDL y la aplicación de servicio web, consulte la especificación JAX-WS o JAX-RPC en las especificaciones de servicios web y en la documentación de la API en función del modelo de programación utilizado.

Puede utilizar un componente Java para implementar un servicio web. Para ello, especifique la interfaz y la información de enlace del componente en el archivo WSDL y diseñe la infraestructura del servidor de aplicaciones para que acepte la solicitud de servicio.

Este proceso completo está basado en la especificación Servicios web para Java EE.

La especificación define el descriptor de despliegue webservices.xml específico para servicios web. El archivo del descriptor de despliegue webservices.xml define el conjunto de servicios web que puede desplegar en un contenedor habilitado para servicios web para Java EE.

Para los servicios Web JAX-WS, el uso del descriptor de despliegue webservices.xml es opcional porque puede utilizar anotaciones para especificar toda la información incluida dentro del archivo del descriptor de despliegue. Puede utilizar el archivo del descriptor de despliegue para aumentar o alterar temporalmente las anotaciones de JAX-WS existentes. Cualquier información que defina en el descriptor de despliegue webservices.xml altera temporalmente la información correspondiente especificada por las anotaciones.

Por ejemplo, si la clase de implementación de servicio para el servicio web JAX-WS incluye la anotación @WebService del modo siguiente:
@WebService(wsdlLocation=”http://myhost.com/location/of/the/wsdl/ExampleService.wsdl”)
y webservices.xml especifica un nombre de archivo diferente para el documento WSDL de la forma siguiente:
<webservices>
<webservice-description>
<webservice-description-name>ExampleService</webservice-description-name>
<wsdl-file>META-INF/wsdl/ExampleService.wsdl</wsdl-file>
…
</webservice-description>
</webservices>
entonces el valor especificado en el descriptor de despliegue, META-INF/wsdl/ExampleService.wsdl altera temporalmente el valor de la anotación.

Consulte la sección 5 de la especificación Servicios web para Java EE para obtener detalles acerca de la correlación entre valores especificados en el archivo del descriptor de despliegue de servicios web y los atributos de las anotaciones @WebService y @WebServiceProvider.

Para servicios web JAX-RPC, debe definir las características de despliegue en el archivo del descriptor de despliegue webservices.xml.

El usuario es el responsable de proporcionar varios elementos al descriptor de despliegue como, por ejemplo:
  • Nombre de puerto
  • Implementación del servicio de puerto
  • Interfaz de punto final de servicio de puerto
  • Definición WSDL de puerto
  • QName de puerto
  • Soporte MTOM/XOP para servicios web JAX-WS
  • Enlace de protocolo para servicios web JAX-WS
  • Correlación JAX-RPC
  • Manejadores (opcional)
  • Correlación de servlet (opcional)
La especificación EJB (Enterprise JavaBeans) 2.1 también indica que para un servicio web desarrollado a partir de un bean de sesión, el descriptor de despliegue EJB, ejb-jar.xml, debe contener el elemento service-endpoint. El valor service-endpoint debe ser el mismo que el especificado en el descriptor de despliegue webservices.xml.

Para obtener una lista completa de los estándares y las especificaciones a los que se da soporte, consulte las especificaciones y la documentación de la API de los servicios Web.


Icon that indicates the type of topic Concept topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_j2ee
File name: cwbs_j2ee.html