2010-08-11 18 views
8

Lo siento por su pregunta de novato. Pero realmente necesito un comienzo en este caso. Quiero acceder a un servicio web en mi proyecto Java EE. Este servicio web ofrece un archivo WSDL. Así que entiendo que puedo usar esto para construir código Java a partir de él para acceder al servicio web. Ahora leo que Apache CXF es un buen marco que puedo usar. ¿Pero cuál es la diferencia con JAX-WS?Web-Service: JAX-WS, CXF, WSDL ... ¿De qué se trata todo esto?

¿Podría alguien explicarme esto?

Respuesta

12

JAX-WS es una especificación (proporcionada por Sun Oracle) para definir servicios web mediante el uso de anotaciones.

Apache CXF es un marco que implementa JAX-WS para generar servicios web Definiciones y Java proxy (de un servicio web Definiciones)

Apache Axis 2 es también un marco que ahora es compatible con JAX-WS (hasta JAX -WS 2). Es una mejora de Apache Axis. CXF admite hasta JAX-WS 1.2.

Breve tutorial se puede encontrar here.

5

JAX-WS es una API (o especificación) y CXF es una implementación de esa API. También hay una implementación de referencia disponible here

+3

Apache CXF tiene una explicación similar para la relación: [Por qué CXF] (http://cxf.apache.org/docs/why-cxf.html) –

1

Las otras respuestas son correctas, pero con CXF o Metro se obtiene una pila de servicios web de implementación y con eso hay características adicionales más allá de la API de JAX-WS. Es por eso que JAX-WS RI también tiene más características disponibles que solo JAX-WS.

Creo que este artículo explica esto muy bien en detalle.

http://www.predic8.com/axis2-cxf-jax-ws-comparison.htm

3

CXF es bueno, pero no es necesario para resolver su problema. Puede usar wsimport, que viene como parte del JDK, para generar clases desde el WSDL para acceder al servicio web.

Cuestiones relacionadas