gpt4 book ai didi

tomcat - Spring 3.0 URL 映射问题

转载 作者:行者123 更新时间:2023-11-28 22:03:54 25 4
gpt4 key购买 nike

我正在 Tomcat 上测试从 Spring 2.0 到 Spring 3.0.5 的升级,我遇到了一个问题,即具有尾部斜线的 URL 与没有尾部斜线的相同 URL 的映射行为不同。

例如,在我的 Spring 2.0 实现中,根据下面的 Spring MVC XML 配置,以下 URL 将映射到同一个 Controller 类:

  • /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>

但是,在 Spring 3.0.5 中,/search/categories/(注意尾部斜杠)未映射到 Controller 。只有 /search/categories(没有尾部斜杠)被映射。

我知道 XML 配置在未来会被弃用,不幸的是,我现在还不能放弃它。但我不确定为什么在 Spring 3.0.5 中,带有尾部斜杠的 URL 会有新的行为。关于可能的修复有任何建议或想法吗?我是否需要执行 Apache 重写条件以删除 URL 上的尾部斜杠?

感谢您的帮助!

最佳答案

我会说最简单的解决方案是 create a BeanPostProcessor修剪尾部斜杠。

或者,更好的是 BeanFactoryPostProcessor ,这样您就可以编辑 bean 定义,而不是实际的 beans。

关于tomcat - Spring 3.0 URL 映射问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5383105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com