一些struts2的教程都是比较早的,当我们基于较新版本的struts2来实现代码的时候,往往会出现一些问题.比如这个警告:FilterDispatcher isdeprecated!
在web.xml中的配置如下:
- <filter>
- <filter-name>struts2</filter-name>
- <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
- </filter>
但是一运行起来就会出现,如图的警告:FilterDispatcher已经过时啦!请使用新的filter!
打开警告里提到的链接,我们可以找到 FilterDispatcher Example(web.xml)
- <web-app id="WebApp_9" version="2.4"
- xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <filter>
- <filter-name>struts2</filter-name>
- <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
- <init-param>
- <param-name>actionPackages</param-name>
- <param-value>com.mycompany.myapp.actions</param-value>
- </init-param>
- </filter>
- <filter-mapping>
- <filter-name>struts2</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
- <!-- ... -->
- </web-app>
这FilterDispatcher Example并没有FilterDispatcher,而是变成了这一句:
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
往下看,原来从>=2.1.3的版本开始,FilterDispatcher被标记为过时,取而代之的是新的
StrutsPrepareAndExecuteFilter
所以如果你的struts版本大于2.1.3时,filter配置要变成:
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。
如果是低于2.1.3版本,则还用本文最开始的配置即可。
相关推荐
<filter-name>sitemesh</filter-name> <filter-class> com.opensymphony.module.sitemesh.filter.PageFilter </filter-class> </filter> <!-- Struts2核心过滤器 --> <filter> <filter-name>struts</...
在这个JSP页面中,`<s:property value="content" />`会被Sitemesh替换为装饰器中的`${page.content}`。 在压缩包文件"testgit"中,可能包含了实际的项目源码,如Sitemesh的配置文件、装饰器模板、以及使用Sitemesh...
<h1>The sum is positive: <%= request.getAttribute("sum") %></h1> </body> </html> ``` negative.jsp: ```html <!DOCTYPE html> <html> <head> <title>Negative Result</title> </head> <body> <h1>The sum is...
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> <init-param> <param-name>config</param-name> <param-value>struts-default.xml,struts-plugin.xml,struts.xml</param-value> ...
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> <prop key="hibernate.show_sql">true</prop> </props> </property> </bean> <!-- 数据源配置 --> <bean id="dataSource" class=...
随着Struts 2的发展,`FilterDispatcher`在新版本中逐渐被`StrutsPrepareAndExecuteFilter`取代,后者整合了准备和执行两个阶段,提高了框架的效率。不过,在很多旧项目中,`FilterDispatcher`仍然是常见的一部分。 ...
<tr><td><s:submit value="添加"></s:submit></td><td><s:reset value="重置"></s:reset></td></tr> </table> </s:form> </body> </html> ``` **6. JavaBean与数据库连接类** - 在`src`文件夹下创建一个名为`...
`<dispatcher>`元素定义了哪些类型的请求会被过滤器处理,如`REQUEST`和`INCLUDE`。 4. **Log4j配置** 要配置Log4j,需要设置`log4jConfigLocation`参数,并添加`Log4jConfigListener`监听器: ```xml <context...
*>>>FilterDispatcher<<<is deprecated! Please use the new filters!* ** *This can be a source of unpredictable problems!* ** *Please refer to the docs for more details!* *...
这里的`<package>`标签定义了一个名为`crm_employee`的包,并指定了其父包为`struts-default`,同时限定了这个包下的Action的URL前缀为`/emp`。 ```xml <package name="crm_employee" extends="struts-default" ...
这通常通过设置`<url-pattern>`元素为`/*`来实现,确保所有请求都能被Struts2框架捕获并处理。 #### 演示代码详解 下面是`web.xml`中配置Struts2框架的基本代码段: ```xml <filter> <!-- 过滤器名字 --> ...
<param name="inputName">targetFile</param> <param name="contentDisposition">filename=""</param> <param name="buffersize">4096</param> </result> </action></package> 也就是说,如果抛出了...
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ...
<result name="success">success.jsp</result> </action> </package> </struts> ``` ### 三、编写业务代码 1. **Action类**:实现具体的业务逻辑处理,通过注解或配置文件指定映射关系。 2. **DAO层**:使用...
<groupId>org.apache.struts</groupId> <artifactId>struts2-core</artifactId> <version>2.5.24</version> </dependency> <!-- Spring Core --> <dependency> <groupId>org.springframework</groupId> ...
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2-execute</filter-name> <url-pattern>*.action</url-pattern> <dispatcher>...
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ``` 至此...
<filter-name>struts1</filter-name> <filter-class>org.apache.struts.action.ActionFilter</filter-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config_1.xml</param...
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <!-- 或者 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter...