Desplegar una aplicación GWT en Tomcat

1- Conseguir que funcione correctamente en el entorno de GWT

2- Compilarla, bien mediante el comando aplicacion-compile, bien mediante el botón de compilación del propio entorno GWT

3- En el tomcat, crear la siguiente estructura de directorios (en general está en /var/lib/tomcat5.5/webapps):

webapps/Aplicacion
webapps/Aplicacion/WEB-INF
webapps/Aplicacion/WEB-INF/classes
webapps/Aplicacion/WEB-INF/lib

4- Copiar todos los ficheros del directorio de la aplicación/www/paquete.aplicacion/ a webapps/Aplicacion

Ej:

cp -R /home/user/java/workspace/App/www/es.prueba.App/* /var/lib/tomcat5.5/webapps/App

5- Copiar el contenido del directorio de la aplicación/bin a webapps/Aplicacion/WEB-INF/classes

Ej:

cp -R /home/user/java/workspace/App/bin/com /var/lib/tomcat5.5/webapps/WEB-INF/classes/com

6- Crear el fichero  webapps/Aplicacion/WEB-INF/web.xml con el siguiente contenido:

<web-app>
   <servlet>
      <servlet-name>Servicio</servlet-name>
      <servlet-class>es.prueba.Servicio</servlet-class>
   </servlet>
   <servlet-mapping>
      <servlet-name>Servicio</servlet-name>
      <url-pattern>/Servicio</url-pattern>
   </servlet-mapping>
</web-app>

Los valores son los mismos que los definidos en el fichero gwt.xml de la aplicación

7- Aquí llega el truco. hace falta copiar las bibliotecas de GWT gwt-servlet.jar y gwt-user.jar al directorio webapps/Aplicacion/WEB-INF/lib.  Peeeero gwt-user.jar incluye las librerías javax, que por temas de licencias están prohibidas en tomcat. Por lo tanto, hay que editar el contenido de ese jar y eliminar el directorio javax. Por ejemplo, con el ark es fácil.

Y ya debería funcionar. Al menos, con proyectos simples, funciona 😉

6 Responses to Desplegar una aplicación GWT en Tomcat

  1. Jorge says:

    Hola!
    Me ha sido de gran ayuda este post!
    Un saludo
    Jorge

  2. gragonfire says:

    Creo que tienes que borrar las javax porque copiar gwt-user.jar sin ser necesario. Basta con copiar gwt-servlet.jar

  3. sandra says:

    Es de gran ayuda pero me encuentro un poco perdia, si no es mucho pedir podria subir el

  4. sandra says:

    el proyecto

  5. Carlos Yagüe says:

    Buenas, no es necesario modificar el JAR gwt-user-*.jar. Basta con no incluirlo en el WEB-INF/lib de tu aplicación GWT.

    Ese JAR sólo sirve para compilar la parte cliente de GWT, es decir, su finalidad es generar todo el javascript asociado de la parte cliente.

    De todas formas, gracias por el aporte 😉

  6. After looking over a few of the blog articles on your site, I really appreciate your technique
    of writing a blog. I saved as a favorite it to my bookmark site list and will be checking
    back in the near future. Please check out my web site too and tell me what you think.

Replica a Jorge Cancelar la respuesta