AOWS

Just another adrian’s weblog

Struts en Google AppEngine

with 5 comments

Struts en AppEngine

Este martes Google anunció la incorporación de Java a su “plataforma de desarrollo” (por llamarlo de alguna forma), AppEngine. En realidad en su máquina virtual pueden correr otros lenguajes, como Groovy, JRuby (y por tanto Rails) o Scala.

Por desgracia, y es que no todo iban a ser buenas noticias, tiene algunas limitaciones. Al no disponer de una base de datos relacional, no se pueden usar JDBC o Hibernate (al menos de forma directa), no soporta JNDI, JMX, EJBs… más info.

En cuanto al framework web, Google barre para casa y ofrece GWT, descartando el soporte para otros como Struts. Sin embargo en principio y viendo las características del entorno no parecía ser por razones técnicas. Y como veremos ahora, efectivamente es posible usar Struts en GAE.

Para ello primero debemos seguir las instrucciones de instalación del SDK, tarea sencilla si lo hacemos a través del plugin para Eclipse. Una vez instalado, pinchamos sobre nuevo proyecto para crear un nuevo proyecto. Deseleccionamos “GWT” y dejamos marcada la casilla del SDK. Debería quedarnos un proyecto con una estructura como la siguiente:

estructura paquetes

Como vemos, nos añade unas cuantas librerías que forman parte del SDK. Lo que haremos ahora será añadir las que necesita Struts, las copiamos en el directorio lib y las incluimos en el build path:

build-path

En este punto hay que tener cuidado y fijarse en los jar que añade el SDK. El que a mí me dió problemas es el commons-logging, incluido en el SDK con la versión 1.1.1. Si copiamos esa misma versión en nuestro lib, al hacer el deploy la sobreescribirá y obtendremos una bonita excepción (el jar suministrado por el SDK no es el mismo que podemos obtener de Apache y sustituye algunas clases por otras propias de Google). La solución fácil y rápida, aunque chapucera, es añadir una versión diferente (la 1.0.4 en mi caso).

Una vez lo tengamos todo listo, simplemente se configura la aplicación como una aplicación Struts normal y corriente.

Struts over GAE

Written by adrian

9 abril, 2009 a 16:09

Publicado en Uncategorized

Tagged with , , ,

5 comentarios

Subscribe to comments with RSS.

  1. Desde que vi ayer tu tweeteo tenía ganas de saber como había ido la cosa. Muy interesante. Me tiene especialmente preocupado BigTable, parece que falla bastante.

    Ramón Antonio Parada

    9 abril, 2009 at 16:59

  2. Ya vi que lo comentabas ayer, yo todavía no lo he probado… a ver si estos días tengo algo de tiempo. Igual son problemas de lanzamiento, no sé.

    adrian

    9 abril, 2009 at 17:07

  3. Muy bueno tu artículo, me ha inspirado y he conseguido hacer funcionar Struts 2 .
    Mira mi articulo : http://guevoneandojava.blogspot.com/2009/04/struts-2-en-google-app-engine.html

    Por si te hace falta, es posible que tengas que habilitar las sesiones en el engine, porque por defecto están deshabilitadas.

    guevonaso

    26 abril, 2009 at 19:42

  4. Gracias por el comentario y el enlace😉

    Es cierto lo de las sesiones, todavía no me ha dado tiempo a “jugar” demasiado con App Engine, pero sí me he topado con el tema ése. A ver si algún comento algunas cosas “más de código” que pueden dar la lata en GAE.

    adrian

    27 abril, 2009 at 07:43

  5. […] de Google, parece que en general los frameworks web van funcionando… Después de ver cómo hacer funcionar Struts en AppEngine, ahora le toca el turno a […]


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: