web.xml et chemins relatifs
-
03-07-2019 - |
Question
dans web.xml, je mets mon fichier d'accueil dans un jsp dans web.xml
<welcome-file>WEB-INF/index.jsp</welcome-file>
à l'intérieur de index.jsp je puis transférer à un servlet
<% response.sendRedirect(response.encodeRedirectURL("myServlet/")); %>
Cependant, l'application essaie de trouver le servlet dans le chemin suivant
applicationName/WEB-INF/myServlet
le problème est que web-inf ne devrait pas être dans le chemin. Si je déplace index.jsp de Web-inf, le problème persiste, mais existe-t-il un autre moyen de contourner ce problème?
La solution
<% response.sendRedirect(response.encodeRedirectURL("/myServlet/")); %>`
étant donné que jsp est servi depuis le répertoire WEB-INF, l’URL du servlet est également résolu à partir de ce chemin relatif. ajouter un / before résoudra l'URL à partir de la racine de contexte
Autres conseils
Si je comprends bien, WEB-INF est un dossier spécial contenant la configuration et les classes utilisées par vos JSP. Vous ne devez pas y insérer de code destiné à la diffusion directe.
Quoi qu'il en soit, avez-vous essayé / myServlet?
Avez-vous essayé de le faire avec le chemin absolu?
response.sendRedirect(response.encodeRedirectURL("/myServlet/"));