2011-03-21 1 views
2

Je suis en train de tester une mise à niveau de Spring 2.0 vers Spring 3.0.5 sur Tomcat et rencontre un problème de comportement de mappage différent pour les URL avec une barre oblique finale et une URL identique sans la barre oblique .Problèmes de mappage d'URL Spring 3.0

Par exemple, dans ma mise en œuvre Spring 2.0, les URL suivantes permettrait à la fois la carte à la même classe de contrôleur, par la configuration XML Spring MVC ci-dessous:

  • /search/categories
  • /search/categories/

<bean id="searchMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> 
    <property name="order" value="1"/> 
    <property name="mappings"> 
     <props> 
      <prop key="/search/categories">categoriesController</prop> 
     </props> 
    </property> 
</bean> 

Cependant, au printemps 3.0.5, /search/categories/ (remarque barre oblique) n'est pas mappé sur le contrôleur. Seul /search/categories (pas de barre oblique) est mappé.

Je sais que la configuration XML est obsolète à l'avenir et, malheureusement, je ne peux pas m'en séparer pour l'instant. Mais je ne suis pas sûr pourquoi avec Spring 3.0.5 il y a un nouveau comportement pour les URL avec des slashes. Des suggestions ou des idées sur une solution possible? Aurai-je besoin d'aller aussi loin que d'implémenter une condition Apache Rewrite pour supprimer les barres obliques finales sur les URL?

Merci pour votre aide!

Répondre