异常:
A request has been denied as a potential CSRF attack
java.lang.SecurityException, Session Error
发生:升级dwr2、tomcat7、weblogic11、jsp中dwr路径问题
解决:
1、添加跨域访问参数
<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>
<!-- 开启跨域调用 -->
<init-param>
<param-name>crossDomainSessionSecurity</param-name>
<param-value>false</param-value>
</init-param>
</servlet>
2、调整jsp的dwr路径:
测试页面的路径:/Struts12/WebRoot/dwrDemo/index.jsp
调整前:
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="dwr/util.js"></script>
<script type="text/javascript" src="dwr/interface/UserService.js"></script>
调整后,访问正常:
<script type="text/javascript" src="../dwr/engine.js"></script>
<script type="text/javascript" src="../dwr/util.js"></script>
<script type="text/javascript" src="../dwr/interface/UserService.js"></script>
【】
相关推荐
2. **DWR的跨域解决方案**:DWR通过提供动态生成的JavaScript文件和Servlet来实现跨域。这些JavaScript文件包含对服务器端方法的引用,使得前端可以安全地调用后端服务。DWR的CORS支持可以通过配置文件或注解来启用...
在这个"DWR2相关资料"的压缩包中,我们可能找到了一个完整的DWR2演示项目,这个项目是为在MyEclipse环境中部署而设计的。MyEclipse是一款强大的集成开发环境(IDE),特别适合于Java EE项目的开发,包括Web应用。 ...
dwr 2.jar dwr 2.jar
同时,由于DWR2允许直接的跨域请求,所以需要关注安全问题,防止XSS和CSRF攻击。 结合Struts2和DWR2,可以实现前后端分离的开发模式,提高开发效率,提供更加流畅的用户体验。不过,需要注意的是,随着前端技术的...
### Spring 2中整合DWR 2:详细解析与实践 #### 一、Spring与DWR简介 在探讨如何在Spring 2框架中整合DWR 2之前,我们首先需要了解这两个技术的基本概念。 - **Spring框架**:Spring是目前Java开发中最流行的开源...
DWR 2增强了安全性,提供了更严格的白名单配置,确保只有预定义的Java方法可以被远程调用,避免了跨站脚本攻击(XSS)和跨站请求伪造(CSRF)等安全风险。 2. **批量调用**: 在DWR 2中,支持批量调用服务器端的方法...
这个压缩包包含了DWR的三个主要版本:DWR1.0、DWR2.0和DWR3.0的jar包,这些jar包是运行DWR应用的核心组件。 DWR1.0: DWR1.0是DWR项目的早期版本,主要目标是简化Web应用中的异步通信。在这个版本中,DWR提供了一个...
4. **错误处理**:整合后的系统可以统一处理DWR和Struts2产生的异常,提供一致的用户体验。 综上所述,"DWR与SPRING,DWR与STRUTS2的整合"主题涵盖了现代Java Web开发中重要的三个方面:DWR的实时通信能力、Spring的...
同时,由于DWR默认不允许跨域访问,可能需要配置CORS策略或者使用DWR的`crossDomain`属性。此外,对于返回的数据类型,DWR默认支持基本类型和部分复杂类型,如果需要返回自定义对象,需要实现序列化。 综上所述,...
### dwr与struts2 #### Struts2的Ajax支持介绍 **Struts2** 是一个流行的MVC(Model-View-Controller)架构框架,它主要用于构建Java Web应用程序。Struts2提供了强大的功能来帮助开发者简化开发流程并提高效率。...
2. **配置DWRServlet**:在web.xml中配置DWRServlet,指定DWR配置文件的位置,如dwrcfg.xml或dwr.xml,并可配置多个config开头的文件。 3. **debug参数**:在web.xml中可设置debug参数,开启后可测试配置的DWR方法。...
4. **安全性**:讨论DWR的安全措施,如防止跨站脚本攻击(XSS)和跨站请求伪造(CSRF),以及如何设置访问控制和身份验证。 5. **缓存策略**:解释DWR的缓存机制,如何提高性能并减少不必要的服务器请求。 6. **...
**标题解析:** "LogViewer(DWR2)" 指的是一个基于DWR2技术的日志查看器示例项目。DWR (Direct Web Remoting) 是一个开源的JavaScript库,它允许Web应用程序在客户端和服务器之间进行实时通信,无需使用Ajax或页面...
DWR2是DWR的一个版本,它在DWR的基础上进行了改进和扩展,提高了性能和功能。在DWR2中,与Spring2框架的集成可以让开发者充分利用Spring的依赖注入、事务管理等优势,同时利用DWR的异步AJAX能力,创建出更加灵活、...
- **安全控制**:DWR有内置的安全机制,如CSRF防护和IP白名单,以防止未授权的访问。 - **易于集成**:DWR可轻松与各种Java Web框架(如Spring、Struts等)集成,提供丰富的Web应用增强功能。 5. **使用DWR**: ...
dwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwr
3. **安全控制**:DWR提供了安全机制,如CSRF(Cross-site Request Forgery)防护,确保只有合法的请求才能被处理。 4. **缓存管理**:DWR支持缓存策略,可以有效地减少不必要的网络传输,提高应用性能。 5. **...
**DWR2.jar** 是DWR的主要库文件,包含了DWR框架的所有核心组件和实现。这个JAR文件包含了许多类,如`DWRServlet`,它是DWR与HTTP请求交互的核心组件,以及各种用于转换数据类型、安全处理和错误处理的工具类。...
《实用DWR 2项目》一书由Frank W. Zammetti撰写,是关于DWR(Direct Web Remoting)框架的深入指南。本书通过六个完整的Web 2.0应用程序实例,详细介绍了如何利用DWR这一在Ajax领域备受瞩目的库进行设计与构建。 ##...
8. **安全性考虑**: 由于DWR允许直接的跨域调用,因此需要考虑防止XSS和CSRF攻击。DWR提供了安全设置,如限制调用的Java类和方法,以及使用令牌验证等。 9. **性能优化**: 为了处理大量并发连接,可能需要考虑使用...