2011-05-09 15 views
6

cuando una empresa desea lanzar un servicio web, ¿publica un WSDL separado para SOAP y separa para servicios web basados ​​en REST o se fusionan en el mismo WSDL? ¿Puede un WSDL representar servicios web REST basados ​​en JSON (no XML)?WSDL para SOAP y WSDL para REST y REST basados ​​en JSON

Supongamos que los clientes de servicios web están basados ​​en Java.

Si SOAP y REST se fusionan en el mismo WSDL, ¿wsimport genera clases separadas (para vincular XML a objetos Java) para SOAP y separa para REST?

Respuesta

6

Necesita WSDL 2.0 (o WADL) para describir el servicio REST. El soporte para WSDL 2.0 es actualmente muy limitado y wsimport no lo admite. No soy desarrollador de Java, pero creo que wsimport es solo para servicios SOAP (JAX-WS y que no es compatible con WSDL 2.0).

Editar:

Comprobar this extension. Debería permitirle exponer el servicio JAX-WS con codificación JSON. También debe exponer el "proxy de JavaScript" para llamar al servicio JSON. Para responder con mayor precisión a su pregunta, no creo que pueda describir el servicio REST sin WSDL 2.0 o WADL. Por lo tanto, no puede fusionar el servicio SOAP y REST con WSDL 1.1 único admitido por la mayoría de las pilas. Para obtener más información sobre la descripción del servicio JSON, marque this question.

+0

Gracias por la información, pero no responde la mayoría de lo que estoy preguntando en mi pregunta. – ace

2

Puede un WSDL sólo representan REST web servicios basados ​​en JSON (no XML)

WSDL 2 XML puede describir mediante la definición de los tipos XML utilizando un esquema. Ver this introduction on WSDL 2 for REST.

Aunque, TBH, nunca antes había escrito WSDL para REST, solo publico las URL y los esquemas para los tipos.

1

Dado que las herramientas no están del todo todavía, dudo que muchos estén utilizando enlaces SOAP y HTTP en un solo WSDL. Aunque ambos se pueden representar en WSDL 2.0, y al mismo tiempo, dado que la mayoría de la gente confía en las herramientas para gestionar sus WSDL hoy (y el resto de la pila de WS), es probable que simplemente no se molesten y dejen solos sus WSDL.

Además, la mayoría de las personas REST están creando sus clientes a mano, en lugar de depender de herramientas y WSDL, por lo que esas personas no están "perdiendo" las herramientas y el soporte para esto.

Cuando las herramientas se ponen al día tanto en el servidor como en el lado del cliente, es probable que haya una mayor adopción en la práctica de enlaces de servicios HTTP en WSDL 2.0. Queda por ver si el modismo será combinar las especificaciones en un único WSDL o no.

Si desean alojarlos en los mismos puntos finales, es probable que lo hagan.

+0

su 2017, ¿ha cambiado esta situación? –