Pour les webapps que je développe, j'utilise généralement l'organisation de fichiers suivante, car je pense qu'elle respecte la convention :
src
|-- main
|-- resources
| |-- *.properties
| |-- *.xml
| |-- spring
| |-- applicationContext.xml (main application context config file)
|-- webapp
|-- WEB-INF
|-- spring
| |-- spring-mvc.xml (web application context config file, delegated to manage only the web part)
| |-- spring-security-http.xml (web security config)
|-- static
| |-- *.css
| |-- *.js
|-- views
| |-- *.jsp
|-- web.xml (deployment configuration)
Ce que j'aimerais essayer, c'est d'organiser mes fichiers selon la structure suivante :
src
|-- main
|-- resources
| |-- *.properties
| |-- *.xml
| |-- web.xml
| |-- spring
| |-- applicationContext.xml
| |-- spring-mvc.xml
| |-- spring-security-http.xml
|-- webapp
|-- WEB-INF
|-- static
| |-- *.css
| |-- *.js
|-- views
|-- *.jsp
Bien sûr, lors de l'empaquetage de la webapp, les fichiers seront déplacés là où ils doivent l'être (par exemple, le fichier web.xml dans le dossier WEB-INF). La raison pour laquelle je voudrais réorganiser mes webapps comme ci-dessus, est que je trouve plus pratique d'avoir tous les fichiers de configuration *.xml au même endroit, plutôt que d'en avoir ici et là. Est-ce une mauvaise idée à votre avis de casser ma structure initiale ? Si oui, pourquoi ? Pourquoi est-il si important d'avoir tous les fichiers de configuration Web dans le dossier WEB-INF ?
PS : techniquement, je sais comment bien lier tous les fichiers dans le classpath de la webapp. La question porte davantage sur les conventions et les retours d'expériences personnelles/professionnelles.