众所周知,strust2 通过在 web.xml中配置 filter,对所有路径的请求进行过滤。
代码如下:
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
而dwr也是在web.xml配置servlet,对请求dwr的路径进行过滤,
代码如下:
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
这样就会产生冲突:给dwr的请求让struts2过滤了。
幸好struts2有一个参数:struts.action.excludePattern ,意思是该参数的值指定的请求,struts2不对其进行过滤。
这样dwr就能进行过滤了。
解决办法:
在struts.xml中,添加:
<struts>
<constant name="struts.action.excludePattern" value="/dwr/test/.*,/dwr/.*"/>
</struts>
问题解决。
注意:value="/dwr/test/.*,/dwr/.*" 中的/dwr/test/.*,/dwr/.*是正则表达式的写法,不是路径的写法!
注意那个“.*” ,而不是“*”
分享到:
相关推荐
Struts2的核心是Action,每个Action对应一个特定的用户操作,通过配置文件(如struts.xml)来定义Action与URL的映射关系,以及Action的执行逻辑。此外,Struts2还支持拦截器,这是一种强大的机制,可以插入额外的...
### dwr与struts2 #### Struts2的Ajax支持介绍 **Struts2** 是一个流行的MVC(Model-...此外,通过在`web.xml`文件中正确配置DWR的核心Servlet以及设置`dwr.xml`文件,开发者可以轻松地在项目中启用这些高级功能。
Action通过配置文件(如struts.xml)来定义请求映射,决定哪个Action处理哪个请求。Struts2还引入了拦截器(Interceptor)的概念,可以实现如日志、权限检查等通用功能的复用。 **DWR框架详解** DWR是一款优秀的...
总之,DWR通过配置DWR.xml文件,使得开发者能灵活控制Java方法的远程调用,结合其强大的功能,为构建高度交互的Web应用提供了便利。在实际项目中,理解并掌握DWR.xml的配置以及DWR的核心技术,对于提升Web应用的用户...
通过以上步骤,我们就完成了Struts2、Spring、iBatis和DWR的整合配置。这样,我们可以利用Struts2进行控制器管理,Spring进行依赖注入和事务管理,iBatis进行SQL映射和执行,而DWR则提供了前后端的实时通信,极大地...
5. **整合Struts2**:Struts2需要通过过滤器进行配置,如`ActionContextCleanUp`和`FilterDispatcher`,确保DWR能够与Struts2框架协同工作。 **Struts2与DWR集成** Struts2提供了强大的MVC功能,DWR则负责处理前端...
3. 配置Struts2、Spring和Hibernate的相关XML配置文件,如struts.xml、spring-context.xml和hibernate.cfg.xml。 4. 根据Hibernate的映射文件(如.hbm.xml或@Entity注解的Java类)创建对应的数据库表。 5. 配置DWR的...
2. **配置DWR**:创建dwr.xml配置文件,定义允许客户端访问的Java类和方法。 3. **创建Action**:在Struts2中编写Action,实现业务逻辑。这些Action方法可以被DWR调用。 4. **DWR映射**:在DWR配置中映射Struts2 ...
这可以通过在dwr.xml中添加`<dwr:annotation-config>`标签,以及在web.xml中配置DWR的Spring监听器来实现。 5. **编写前端代码**:在HTML页面中,引入DWR的JavaScript库,并使用DWR提供的API来调用服务器端的方法。...
### Struts1.x、Spring2.x、Hibernate3.x 和 DWR2.x 整合知识点解析 ...通过以上详细的配置和解释,可以有效地实现Struts1.x、Spring2.x、Hibernate3.x 和 DWR2.x 的整合,为开发者提供了一个稳定、高效的技术栈。
这些文件包括但不限于Struts2的配置文件(struts.xml)、Spring的配置文件(applicationContext.xml)、Hibernate的映射文件(hbm.xml)以及DWR的配置文件(dwr.xml)。开发者可以通过查看这些文件来了解项目的具体...
在这个“dwr.rar”压缩包中,包含了一些关于DWR与Struts2框架整合使用的示例,对于学习和理解DWR在实际项目中的应用非常有帮助。 DWR的核心功能在于它提供了一种安全、高效的机制,使得前端JavaScript可以直接调用...
1. 配置Struts2:添加Struts2的依赖,配置struts.xml文件,定义Action和结果类型。 2. 集成Hibernate5:引入Hibernate库,配置hibernate.cfg.xml,创建实体类和映射文件,设置数据源和SessionFactory。 3. 配置DWR:...
通过配置Struts2的XML配置文件,可以定义Action与URL的映射关系,以及Action如何处理请求并返回结果。Struts2还支持拦截器,这是一种AOP(面向切面编程)的概念,可以在Action执行前后插入自定义逻辑,例如权限检查...
- 创建`dwr.xml`,在其中声明允许客户端调用的Java对象和方法。 - 在Web.xml中配置DWR的Servlet,设置安全过滤器,以限制对DWR的访问。 5. **Web.xml配置**: - 配置Struts2的前端控制器Filter,以及Spring的...
配置dwr.xml和web.xml 运行 http://localhost:5858/start/dwr/ 它会在后台输出一些信息,自己看一下就可以了,就是一些加载项之类的东西或者是其他的一些信息. ajaxvalidate包 AjaxValidation.jsp 配置struts.xml即可...
2. **配置Struts2**:在`struts.xml`配置文件中,定义Action类和对应的Result,指定使用FreeMarker模板进行渲染。例如: ```xml <action name="yourAction" class="com.example.YourAction"> ...
4. 创建并配置DWR的配置文件dwr.xml,指定允许客户端调用的服务器端方法。 5. 将所有相关库(如以上提到的jar文件)添加到项目的类路径中。 6. 编写Action、Service、DAO层的代码,实现业务逻辑。 7. 使用Struts2的...
2.5.10.1.jar,struts2-config-browser-plugin-2.5.10.1.jar,struts2-convention-plugin-2.5.10.1.jar,struts2-dwr-plugin-2.5.10.1.jar,struts2-embeddedjsp-plugin-2.5.10.1.jar,struts2-gxp-plugin-2.5.10.1....
1. **架构**:Struts框架主要由ActionForm、Action、ActionServlet、Tiles等组件构成,通过配置文件(struts-config.xml)来定义请求的处理流程。 2. **控制器**:ActionServlet作为MVC中的Controller,负责接收HTTP...