| Remarque | ||
|---|---|---|
| ||
Manque l'arborescence de test dans la capture d'écran développeur Manque le repertoire src/main/config Faire une première partie qui reprend l'arborescence des fichiers modules maven pom etc. |
Du point de vue du développeur, une application est composée de plusieurs projets Eclipse, chaque projet correspondant à un module MAVEN.
...
Sommaire :
| Sommaire | ||
|---|---|---|
|
...
Arborescence développeur
| le Le fonctionnement de MAVEN impose une architecture particulière : il n'y a que deux répertoires.
|
|
Arborescence exploitant
| l L'arborescence du produit déployé par l'exploitant est obtenue en décompressant un fichier WAR.
|
...
|
Le répertoire properties : les fichiers de configuration
| Astuce |
|---|
Afin de centraliser la configuration une bonne pratique consiste à utiliser un fichier de configuration centralisant les paramètres de l'application. Ceci évite notamment de devoir modifier n fichiers différents. |
Dans le cas ou où la configuration n'est pas centralisée, les fichiers de configuration sont en général fournis sous forme de fichiers d'exemple (xxx-example.xml).
...
Le fichier de configuration Spring auth-example.xml définit le bean authenticationService, qui sert à l'application à récupérer l'identifiant de l'utilisateur connecté. Il doit être copié en auth.xml.
...
Le fichier de configuration Spring cache-example.xml définit le bean cacheManager, qui sert à l'application à s'appuyer sur un gestionnaire de cache. Il doit être copié en cache.xml.
...
Le fichier de configuration Spring dao-example.xml définit la manière dont l'application récupère les données de la base de données, par exemple avec Hibernate.
Il doit être copié en dao.xml.
Le fichier de configuration Hibernate hibernate/hibernate.cfg-example.xml définit la manière dont Hibernate se connecte à la base de données. Il doit être copié en hibernate.cfg.xml. Il est référencé par le bean abstractHibernateSessionFactory de défini dans le dao.xml.
Les fichiers de configuration Hibernate hibernate/mapping/.hbm* décrivent le mappingentre les classes Java et les tables de la base de données. Ils sont également référencés par le bean abstractHibernateSessionFactory de dao.xml. Il n'est en général pas nécessaire pour les administrateurs de modifier ces fichiers, ils ne sont pas fournis sous forme d'exemples.
...
Le fichier de configuration Spring i18n-example.xml définit le bean i18nService, qui indique comment l'application récupère les chaînes de caractères utilisés utilisées dans l'application. Il doit être copié en i18n.xml. Les fichiers bundles/_.properties contiennent les chaînes de caractères proprement dites.
...
Le fichier de configuration Spring converters.xml définit les convertisseurs de l'application, qui convertissent des objets en chaînes (vice-versaet inversement) lors des interactions utilisateur.
Le répertoire webapp : l'application web et ses bibliothèques
webapp/media : les fichiers statiques
On trouvera dans ce répertoire tous les fichiers délivrés de manière statique par l'application web aux clients :
...
L'intérêt de ce regroupement est de pouvoir shunter Tomcat par un frontal Apache, plus efficace pour le délivrement de ressources statiques.
/webapp/META-INF : le manifest
Le fichier /webapp/META-INF/MANIFEST.MF est produit automatiquement par MAVEN
/webapp/stylesheets : les pages JSF
Toutes les pages JSF doivent être situées à cet endroit pour pouvoir être protégées d'un accès direct de manière globale.
/webapp/WEB-INF : la configuration de l'application web
Le fichier portlet-example.xml indique à Pluto comment configurer la portlet, il n'est utilisé qu'en mode portlet. Il doit être copié en portlet.xml.
Les fichiers web-portlet-example.xml (resp. web-servlet-example.xml) est un exemple de configuration du contexte Tomcat associé à l'application. En mode portlet (resp. servlet), il doit être copié en web.xml.
/webapp/WEB-INF/jsf : les composants facelets
Tous les composants facelets utilisés dans le projet doivent se trouver dans ce répertoire.
/webapp/WEB-INF/lib : les bibliothèques de l'application
Même les applications en mode batch seulement doivent utiliser /webapp/WEB-INF/lib pour déposer leurs bibliothèques, même si dans ce cas le nommage n'est pas très approprié. C'est MAVEN qui se charge de créer et remplir ce répertoire.

