Ce que permet (ou permettra) esup-commons
... des application web
Type d'application |
Spring-MVC |
JSF 1.2 |
JSF 2.0 |
---|---|---|---|
Servlet desktop |
x |
x |
|
Mixte (Mobile Portlet WAI Servlet) |
|
|
|
Servlet Mobile |
x |
x |
|
WAI |
|
? |
|
Portlet <--> Servlet Appli lourdes et légère
Quel module pour quel type de projet :
-
- Une application portail :
- Petit projet qui ne doit figurer que dans le portail mixte JSF ou Spring
- Un projet moyen offrant les mêmes vues portlet et servlet mobile -> Mixte JSF 1.2
- Une application hors portail :
- Un site web complètement externe au portail -> Serlvet uniquement => car JSF 2.0 pour des application lourdes qui nécéssiterait de l'ajax etc. car portlet bridge uPortal ne fonctionne qu'avec JSF 1.2
Les notions de blank et example
Dans sa deuxième version, esup-commons adopte un méthodologie complètement différente de la première.
Auparavant, le développement d'un projet passait par le checkout SVN d'un projet "blank" qui devait dépendre du projet Esup-commons lui-même récupéré par checkout SVN. Voir (03 Méthodologie de développement)
Désormais un projet esup-commons se base sur Maven et la notion d'archetype.
Pour démarrer un nouveau projet on partira sur la base d'un archétype blank qui grâce au mécanisme de dépendance Maven intégrera esup-commons sous forme de jar.
-
- mettre un ecran structure vide**
La notion de projet d'exemple existe toujours. Cette application a pour but de présenter une implémentation simple d'un projet esup-commons et quelques fonctionnalités incontournables d'une application. Cette dernière sera être récupérée par checkout SVN.
Attention : les projets esup-commons et esup-blank disponibles sur le SVN ne sont utilisés que par les contributeurs du projet esup-commons
Le fonctionnement en modules
Un projet esup-common se décompose en sous projets indépendants appelés "modules" au sens Maven.
Au packaging chaque module sera proposé sous forme soit d'un fichier jar pour les couches basses soit d'un fichier war pour la présentation.
- WEB-JSF-SERVLET
- WEB-JSF-PORTLET
- WEB-JSF-MOBILE
- WEB-JSF-SHARED => controleurs
- DOMAIN-SERVICES => Les services métiers (authenticator, accès au WS, Exposition de WS)
- DOMAIN-BEANS => Les objets métiers
- DAO => Accès aux données
- UTILS => utilitaires transverses à toute l'application