Pregunta

Utilizo XFire para crear un contenedor de servicios web alrededor de mi aplicación. XFire proporciona la interfaz de servicio web y WSDL en tiempo de ejecución (o los crea en tiempo de compilación, no sé exactamente).

Muchos de nuestros clientes no conocen muy bien los servicios web y, además, simplemente no leen ninguna documentación externa como Javadoc. Sé que es posible agregar documentación (para parámetros y métodos) directamente al archivo WSDL.

Pensé en Annotations o Aegis XML files pero no sé cómo ... ¿Conoces alguna forma?

Editar: acabo de encontrar este problema de JIRA pero la última actividad fue 2006. ¿Algunas ideas?

¿Fue útil?

Solución

XFire se dirige lentamente hacia / dev / null. Utilice CXF en su lugar. En otras palabras, XFire está en desuso en favor de CXF, es casi lo mismo que los desarrolladores.

Ya que utiliza el enfoque Java-first, le sugiero que genere su WSDL de una vez por todas con la herramienta java2wsdl de CXF, luego ponga su documentación en eso y le diga a CXF que use que WSDL documentado en lugar de permitir que CXF genere su propio WSDL (no documentado) en tiempo de ejecución / tiempo de despliegue.

Esta página tiene prácticamente todo lo que necesita saber crear un servicio web en CXF.

Otros consejos

  

Y mi última sugerencia sobre CXF: usar Aegis para el enlace de datos en lugar de JAXB. No funciona para POJO complejo.

En mi experiencia, no tenemos ningún problema con los complejos POJO y JAXB, el único problema es que el código comienza a saturarse con JAXBElements. Por otro lado, la documentación de Aegis es bastante escasa y no está bien mantenida en relación con CXF.

Déjame agregar mis dos centavos con respecto a XFire. Tuvimos un problema muy serio con XFie bajo JDK6 (tanto Tomcat 6.0 como 5.5). Por favor, eche un vistazo a ese problema . En nuestro caso, XFire con más de 4 servicios web bajo JDK6 conduce a servidores de aplicaciones colgados (puntos muertos en los hilos, etc.). Es interesante, pero bajo JDK5 todo estaba bien.

Y estoy completamente de acuerdo con Christian Vest con respecto a la migración a CXF desde XFire. Tiene sentido en muchos casos, por ejemplo. ESB Mule 2 ya no admite conectores XFire nativos ().

Y deseo agregar que la migración de XFire a CXF no es una forma estricta (p. ej., CXF tiene dependencias jar que entran en conflicto con algunas liberaciones de hibernación vea también ), pero es factible. En nuestro caso, lo hicimos durante un par de días sin corrección de código (configuración solo de Spring).

Y mi última pista con respecto a CXF: use Aegis para el enlace de datos en lugar de JAXB. No funciona para POJO complejo.

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