FAM 4.0 - Scaffolding

1. Scaffolding

Scaffold és bastida en anglés. La tècnica de scaffolding consisteix en generar codi que permet la funcionalitat bàsica d’un model o entitat, normalment un CRUD (Create, Read, Update, Delete). D’aquesta forma s’estalvia temps alhora de generar el codi base, la bastida, d’una entitat, que en el cas de les aplicacions JEE de la Diputació són:

  • Vista: llistat o índex i detall.
  • Backed o Managed Bean per relacionar les vistes amb el negoci (serveis).
  • Servei: les operacions típiques d’un sistema transaccional.
  • Model de dades per les taules de la vista, la paginació lazy i les cerques.
  • Cerca: permet lligar els camps de cerca de la vista amb el model de dades i la paginació lazy

La generació d'aquest codi es basa en plantilles ja establertes de forma que també s'estalvia temps i possibles errors en el disseny de les vistes

2. Estructura de directoris i plantilles

La estructura de les plantilles es pot veure a la següent imatge. Cal tenir en compte que la carpeta agd correspon al projecte on es vol generar el codi, per defecte a la plantilla apareix com a fam.

scaffolding_templates.jpg

3. Configuració

La configuració està a l'arxiu scaffolding.json

{
  "output_directory": ".",
  "template_location": "scaffolding",
  "base_package": "cat.diba.jee.agd",
  "read": false,
  "only_with_entity_directives": true,
  "entities": ["ExempleModel"]
}

Per generar el codi de les entitats caldrà modificar la cadena entities amb els noms de les entitats corresponents i adaptar el paquet base al del projecte.

4. Generació de codi

S'executa la classe tools.Scaffolding i a continuació cal refrescar el projecte a l'Eclipse.

5. Limitacions

Actualment no genera la navegació de prettyFaces i cal crear-la manualment a l'arxiu pretty-aplicacio.xml. Veure l'article navegació entre pàgines

6. Codi original

Simple Scaffolding

1
Grups de treball:
Plataforma JEE