Quel est un moyen simple de résoudre le chemin d'accès à un fichier JSP qui ne se trouve pas dans le répertoire racine JSP d'une application Web en utilisant SpringMVCs viewResolvers? Par exemple, supposons que nous avons la structure d'application Web suivant:Spring MVC: Comment faire pour résoudre le chemin d'accès aux sous-répertoires du dossier racine 'JSP' dans une application Web
web-app
|-WEB-INF
|-jsp
|-secure
|-admin.jsp
|-admin2.jsp
index.jsp
login.jsp
Je voudrais utiliser des hors-the-box composants pour résoudre les fichiers JSP dans le dossier racine jsp et le sécurisé sous-répertoire. J'ai un fichier *-servlet.xml
qui définit:
un out-of-the-box, InternalResourceViewResolver
:
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
un mappage de gestionnaire:
<bean id="handlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/index.htm">urlFilenameViewController</prop>
<prop key="/login.htm">urlFilenameViewController</prop>
<prop key="/secure/**">urlFilenameViewController</prop>
</props>
</property>
</bean>
un out-of-the-box UrlFilenameViewController
contrôleur:
<bean id="urlFilenameViewController" class="org.springframework.web.servlet.mvc.UrlFilenameViewController">
</bean>
Le problème que j'ai est que les demandes à la Les pages JSP du répertoire sécurisé ne peuvent pas être résolues car le jspViewResolver
a uniquement un préfixe défini comme /jsp/
et non /jsp/secure/
.
Existe-t-il un moyen de gérer des sous-répertoires comme celui-ci? Je préférerais garder cette structure parce que j'essaie aussi de faire usage de Spring Security et d'avoir toutes les pages sécurisées dans un sous-répertoire est une bonne façon de le faire.
Il y a probablement un moyen simple d'y parvenir, mais je suis nouveau sur Spring et le framework Spring MVC donc tous les pointeurs seraient appréciés.
Remarque non liée, mais vous n'avez plus besoin de spécifier 'JstlView' comme' viewClass', Spring le trouvera par défaut. – skaffman