Puesta a punto de Google App Engine
Jul 24, 10 by Juan Lebrijo about application server, blog, Eclipse, Java
Voy a ver como instalar el plugin de GAE en mi Eclipse, y a hacer y subir mi primera aplicación sencilla para ver como gestiona el ciclo de vida básico de las aplicaciones dicho plugin. Nos basaremos en el paquete Eclipse Galileo R2 para JEE projects de 64 bits. Y en el Google Plugin for Eclipse, que soporta las tecnologías GWT y GAE, en su versión para Galileo. Instalar Eclipse es inmediato, se descarga y se descomprime en la carpeta que gustemos. Luego lo ejecutamos. Para instalar el plugin de Google, Help > Install New Software ... > Add, añadimos la url  Google Plugin for Eclipse for Galileo. E instalamos el plugin y las dos SDK. Creamos la aplicación Web File > New > Web Application Project:
create_project.thumbnail.png 12.6 KB
Para probarla en modo local, en el menú conextual Debug As > Web Application. Así vemos como se debuguea la aplicación con el debuger de Eclipse de forma normal. Para desplegarla en el servidor tenemos que tener cuenta en https://appengine.google.com,  y crear un ID (pe: firstapp-lebrijo). Este lo introduciremos a través del menú contextual Google > App Engine Settings... De esta forma Eclipse sabrá donde desplegarla cuando hagamos Google > Deploy to App Engine. Tengo mi primera aplicación en: http://firstapp-lebrijo.appspot.com/
first_app.thumbnail.png 7.47 KB
Arquitectura: capa de servicios con Spring
Jul 18, 10 by Juan Lebrijo about spring, blog, Eclipse, Java
Para implementar la capa de servicios y aprovechar su inyección de dependencias vamos a utilizar Spring. Con Spring 2.5.6, que es la versión soportada por OEPE, para acomodar nuestro desarrollo. Primero añadimos la Facet de Spring a nuestro proyecto. En el menu contextual del proyecto > Properties... :
add_spring_facet.thumbnail.png 11.1 KB
Luego generamos las clases ORM. Se generan con el menú contextual del proyecto > Spring > Generate Spring ORM Classes ...
new_orm_services.thumbnail.png 8.28 KB
Como se observa, sobre las entidades JPA definidas en nuestro paquete de persistencia, se definen las clases de acceso y las de servicio. Os recomiendo echarle un buen vistazo a los paquetes lebrijo.school.services y lebrijo.school.dao. Lo normal es que debamos limpiar estas clases de métodos, ya que genera todas las posibilidades (remove, persist, findById,...). Por ejemplo, si una entidad de nuestro modelo es una vista, no tendrá sentido mantener un DAO con los métodos persist y remove. Aquí os dejo el zip del proyecto eclipse tras estas modificaciones.
Architecture: Services layer with Spring
Jul 18, 10 by Juan Lebrijo about spring, blog, Eclipse, Java
In order to make the service layer and use the dependency injection we will take Spring. Spring 2.5.6 is the OEPE default version supported. First we will add the Spring Facet to our project. Right mouse button over the project > Properties... :
add_spring_facet.thumbnail.png 11.1 KB
After genertate the ORM classes. They will generate with contextual menu > Spring > Generate Spring ORM Classes ...
new_orm_services.thumbnail.png 8.28 KB
You can see, about the JPA defined in our persistence package, it will create th access classes and services ones. I recommend you see the lebrijo.school.services and lebrijo.school.dao packages. After we must clean this class of methods, the generator generates all possibilities (remove, persist, findById,...). For example, if one entity of our model is a view, we can destroy persist or remove methods. Here I keep the zip eclipse project after these steps.