Je développe un projet de printemps et je viens de rencontrer de sérieux problèmes avec le chargement des fichiers de configuration XML dans junit (mais ils sont accessibles depuis les contrôleurs web) - impossible de charger les fichiers XML.printemps où stocker les fichiers de configuration xml
j'ai énuméré mon classpath (dans les tests JUnit) et a constaté que, parmi les autres, il y a 2 répertoires inclus:
/var/www/Java/lyricsBase/build/web/WEB-INF/classes/
/var/www/Java/lyricsBase/build/test/classes/
Il n'y a qu'un seul fichier que je veux inclure dans mon test:
- /WEB-INF/lyricsBaseApp-servlet.xml
et il importe 3 fichiers ci-dessous:
- /WEB-INF/hibernate.xml
- /WEB-INF/dataSource.xml
- /WEB-INF/beans.xml
Je peux voir clairement que le déploiement de mon projet sur tomcat copie les fichiers confg vers /var/www/Java/lyricsBase/build/web/WEB-INF/ABC.xml
mais ce répertoire ne se trouve pas dans le chemin de classe, /var/www/Java/lyricsBase/build/web/WEB-INF/classes
est inclus à la place. J'ai lu que WEB-INF ne devrait pas être dans le classpath (c'est juste un principe Java EE). OK - alors où dois-je mettre mes fichiers de configuration pour y accéder facilement à la fois des contrôleurs Web et des tests de junit? Des bonnes pratiques?
Lorsque vous utilisez Maven, que de jeter un oeil à cette question: http://stackoverflow.com/questions/13859755/dans-la-sortie-de-principal-configuration-files-when-using-maven – Ralph