J'ai une application web déployée comme un fichier WAR dans Tomcat 7. L'application est construite comme un multi-projet de module:
- core - emballés que le POT, contient la plupart du backend code
- core-api - emballés que le POT, contient des interfaces vers la base
- webapp - emballés que la GUERRE, contient frontend code et dépend de base
- client-extensions - module optionnel, emballé comme JAR
Normalement, nous pouvons mettre nos fichiers JSP dans la webapp projet et de référence par rapport au contexte:
/WEB-INF/jsp/someMagicalPage.jsp
La question est de savoir ce que nous faisons à propos des fichiers JSP qui sont spécifiques au client,-les extensions de projet, qui ne doit pas toujours être inclus dans la GUERRE. Malheureusement, je ne peut pas se référer aux pages Jsp à l'intérieur des fichiers JAR, il semble. Tentant classpath:jsp/customerMagicalPage.jsp
les résultats dans un fichier n'est pas trouvé dans le JspServlet, car il utilise ServletContext.getResource()
.
Traditionnellement, nous avons un problème "résolu" ce avoir maven décompresser le client de l'extension JAR, recherchez les Jsp, et les mettre dans la GUERRE lors de sa construction. Mais la situation idéale est celle où vous déposez simplement un POT dans le explosé WAR dans Tomcat et l'extension est découvert - qui fonctionne pour tout, mais les pages Jsp.
Est-il de toute façon à résoudre ce problème? Une façon standard, un Tomcat de manière spécifique, un hack, ou une solution de contournement? Par exemple, j'ai eu la pensée de le déballage de la JSPs de démarrage de l'application...