Pregunta

He lectura acaba de terminar sobre el jabón a través de primavera-WS en la "Primavera en Acción", segunda edición, de Craig Walls de Manning Publicaciones Co. Ellos escriben sobre Contrato En primer lugar, al igual que los documentos de la primavera, con la fabricación de un mensaje y método XML y transformando luego de que a XSD y luego otra vez a WSDL, mientras que el cableado de la trayectoria de clasificación y el servicio en la primavera.

he de reconocer, no estoy convencido. ¿Por qué es este un camino mejor que, digamos, por lo que una interfaz de servicio y la generación de mi servicio basado en la interfaz? Eso es bastante cerca de la definición de mis @Controllers descansar en Spring3. ¿Tengo opciones de ir un camino como éste con la fabricación de servicios web SOAP con la primavera?

También: Me gustaría duplicar un servicio web ya existente. Tengo su WSDL y puedo tener mi servicio colocado en vez de él. Se recomienda esto en absoluto? Si es así, ¿cuál es el enfoque que se recomienda?

Saludos

Nik
¿Fue útil?

Solución

Creo que debe haber cables enredados.

primeros medios

Contrato definir un WSDL y, a continuación, crear código Java para apoyar este WSDL.

Contrato últimos medios creación de su código Java, y la generación de un WSDL más tarde.

El peligro con un contrato última es si su WSDL se genera automáticamente a partir del código de Java, y que refactorizar el código Java, esto hace que el WSDL para el cambio.

Primavera-WS sólo es compatible con contrato primero

  

2.3.1. Fragilidad

     

Como se mencionó anteriormente, la   contrato-último estilo de desarrollo   resultados en su contrato de servicio web   (WSDL y XSD tu) que se generan   de su contrato de Java (por lo general una   interfaz). Si está usando este   enfoque, se tendrá ninguna garantía   que la constante de estancias de contratos sobre   hora. Cada vez que cambie de Java   contrato y volver a implementarlo, podría   ser los cambios posteriores en la web   contrato de servicio.

     

Adicionalmente, no todas las pilas de SOAP   generar el mismo contrato de servicio web   de un contrato de Java. Esto significa   cambiando la pila de jabón corriente para una   uno diferente (por cualquier razón),   También podría cambiar su servicio web   contrato.

     

Cuando cambia un contrato de servicios web,   usuarios del contrato tendrán que ser   instrucciones para obtener el nuevo contrato   y potencialmente cambiar su código para   adaptarse a cualquier cambio en la   contrato.

     

Para que un contrato sea útil,   que debe permanecer constante durante el tiempo que   posible. Si un contrato cambia,   tendrá que ponerse en contacto con todos los usuarios   de su servicio, y darles instrucciones para   obtener la nueva versión del contrato.

Otros consejos

punto de kit de herramientas sobre las interfaces Java siendo más frágil es correcta, pero creo que hay más.

Al igual que hay una falta de concordancia objeto-relacional, también hay una falta de coincidencia de objetos en XML. Los documentos de servicios web primavera hacen un buen trabajo de explicar cómo las colecciones y el resto puede hacer que la generación de un documento XML a partir de una problemática de clase Java o .NET.

Si se toma el enfoque de la primavera y empezar con un esquema que va a estar mejor. Va a ser más estable, y que va a permitir "duck typing". Los clientes pueden ignorar elementos que no necesitan, por lo que puede cambiar el esquema mediante la adición de nuevos elementos sin afectar a ellos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top