Ayer comentábamos en este post como hacer una gestión Maestro-detalle con ROO.
En el post de hoy vamos a cambiar la Capa de Presentación para que sea Flex:
1) Creo una carpeta nueva (AsignacionPersonas-Flex por ejemplo)
2) Copio a la nueva carpeta de la carpeta en la que hice la gestión con Spring MVC el fichero log.roo
3) Cambio el nombre al fichero por import.roo y lo edito:
| // Spring Roo 1.1.0.RELEASE [rev 793f2b0] log opened at 2011-01-13 00:45:45
project –topLevelPackage es.luismi.roo.asignacionpersonas –projectName AsignacionPersonasFlex persistence setup –provider HIBERNATE –database HYPERSONIC_PERSISTENT entity –class ~.domain.Proyecto testAutomatically field string nombre –notNull –sizeMin=8 –sizeMax=8 field date fechaInicio –type java.util.Date –notNull field date fechaFin –type java.util.Date field string descripcion // [failed] field string descripcion –sizeMax=255 entity –class ~.domain.Empleado –testAutomatically field string nombre –notNull–sizeMin=8 –sizeMax=50 field string apellidos –notNull–sizeMin=8 –sizeMax=50 field number codigoEmpleado –type java.lang.Integer –min=10000 field reference –fieldName proyectoActual –type ~.domain.Proyecto –class ~.domain.Empleado field set –class ~.domain.Empleado –fieldName listaProyectos –element ~.domain.Proyecto perform eclipse |
He eliminado esta línea
>controller all –package ~.web
Y cambiado el nombre de proyecto
4) Lanzo el script import.roo vía:
>roo script import.roo
5) El release actual del plugin de Flex para Spring Roo no es compatible con Spring ROO 1.1, aunque podemos bajarnos un snapshot compatible desde:
6) Copio el jar descargado (org.springframework.flex.roo.addon-1.0.0.BUILD-20110113.020022-196.jar) a %ROO_HOME%/bundle
7) Lanzo consola roo
>roo
8) Compruebo que el addon se ha añadido con
>osgi ps list
9) Añado un Repositorio a Proyecto Maven (pom.xml):
| <repository>
<id>spring-snapshot</id> <name>Spring Portfolio Snapshot Repository</name> <url>http://maven.springframework.org/snapshot</url> <releases> <enabled>false</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> |
10)
11) Añado soporte Flex al proyecto
>flex setup
12) Genero Vistas con scaffolding:
>flex remoting all –package ~.model
13) Hago un >perform package para que se descargue todas las dependencias para poder ejecutar Flex. Son muchas, así que tomároslo con paciencia 🙂
14) Desde fuera de la consola lanzo Jetty con Maven:
>mvn jetty:run-exploded
Lanzamos Jetty con el proyecto en modo carpeta, ya que el proyecto Flex incluye varios SWFs y es más pesado desplegarlo como WAR:
15) Ejecutamos en un navegador: http://localhost:8080/AsignacionPersonasFlex/AsignacionPersonasFlex_scaffold.html
Voilá:
Desafortunadamente el soporte de Flex a Spring ROO aún está en desarrollo, y el addon sobre Spring Roo 1.1 tiene varias deficiencias…en nuestro caso que no gestiona bien las relaciones n-m 😦
Todo esto quedará solucionado cuando salga la release del addon para Spring Roo 1.1.





Deja un comentario