2011-05-16 11 views
7

Tengo un servicio web SOAP que se ejecuta en Tomcat 6 (usando servicios web de Primavera, Java)servicio web como un archivo JAR o GUERRA dentro de otra GUERRA?

Ahora desea combinar este servicio web en otra aplicación Web grande (utiliza Spring, Java y no un servicio web) y utilizar el servicio web como un pequeño complemento para la aplicación web principal. Quiero decir, cuando ejecuto mi aplicación principal, mi servicio web también comenzará a funcionar. Y usarán los mismos recursos.

La aplicación web principal ya tiene varios complementos que son archivos JAR en su carpeta WEB-INF/LIB. Pero mi servicio web es un archivo WAR, ¿puedo usar una aplicación web (archivo WAR) dentro de otra carpeta WEB-INF/LIB de aplicaciones web?

Si no puedo hacer eso, ¿es posible eliminar la carpeta WEB-INF de mi servicio web y hacer que mi servicio web sea un archivo JAR y ponerlo en mi carpeta principal de aplicaciones WEB-INf/LIB? No estoy seguro de poder servir un servicio web como un archivo JAR.

¿Qué enfoque cree que es mejor o tiene otras sugerencias?

Gracias

Respuesta

6

lo recomiendo que haga una JAR fuera de su servicio web y ponerlo en la carpeta lib. Lo bueno de Java es que no importa dónde se encuentra el código, siempre y cuando lo cargues correctamente.

No creo que pueda tener WAR dentro de WAR. Sin embargo, puede fusionar dos proyectos de WAR en uno (lo que se puede realizar, por ejemplo, con el sistema de compilación maven). Aún así, la fusión de WAR es una operación de copiar y pegar-sobrescribir que deja mucho que desear.

+0

¿Podría decirme un poco más cómo puedo hacer una jarra de un servicio web de jabón de primavera-ws? – Spring

+0

Simplemente cree un proyecto jar normal utilizando su IDE favorito, o créelo manualmente desde sus archivos java siguiendo [la guía de Oracle] (http://download.oracle.com/javase/tutorial/deployment/jar/basicsindex.html) . Este archivo jar de servicio web no debe ser diferente de cualquier otro jar. Solo recuerda incluir las dependencias spring-ws como archivos jar también en tu proyecto WAR. –

+0

Gracias, entonces solo eliminaré la carpeta WEB-INF de mi servicio web (porque quiero usar la carpeta principal de aplicaciones web-inf) y agregaré todo al archivo jar, incluidos todos mis archivos de configuración xml (spring.wsdl, applicationcontext.xml ..etx) y funcionará? – Spring

0

He copiado el servlet relevante & alguna configuración en la aplicación web principal. también dedicó pocos paquetes a clases de servicios web y agregó dependencias requeridas.

Cuestiones relacionadas