我正在尝试将一个Struts2应用程序(版本2.2.1.1)迁移到Spring MVC,但我在将struts.xml映射转换为SpringMVC servlet映射方面遇到了困难。
我的第一个问题是Struts2排除模式的确切工作方式。假设在我的web.xml中,我已经设置了一个过滤器/映射来处理struts2,如下所示:
在我的struts.xml文件中,我已经定义了一些可用的动作。现在根据Struts2文档的理解,自从Struts 2.1.7版本以来,你可以提供一个逗号分隔的模式列表,当匹配请求URL时,过滤器将会忽略这些模式。这是通过配置选项struts.action.excludePattern实现的,例如在您的struts.xml中。如果我添加了一个排除模式,例如:
我的第一个问题是Struts2排除模式的确切工作方式。假设在我的web.xml中,我已经设置了一个过滤器/映射来处理struts2,如下所示:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
在我的struts.xml文件中,我已经定义了一些可用的动作。现在根据Struts2文档的理解,自从Struts 2.1.7版本以来,你可以提供一个逗号分隔的模式列表,当匹配请求URL时,过滤器将会忽略这些模式。这是通过配置选项struts.action.excludePattern实现的,例如在您的struts.xml中。如果我添加了一个排除模式,例如:
<constant name="struts.action.excludePattern" value="/*"/>
那么过滤器应该被绕过,上述操作不应该被解决,对吗?
出于某种原因,这种情况没有发生,所有我的操作仍然被正确路由。
是什么原因呢?