DWR配置深度解析:快速掌握创建与转换策略

需积分: 9 11 下载量 25 浏览量 更新于2024-09-13 收藏 23KB DOCX 举报
DWR(Direct Web Remoting)是一种用于在客户端和服务器之间实现无页面刷新的AJAX通信的Java库。DWR配置详解主要关注如何在dwr.xml文件中正确设置和管理远程对象(Remote Beans),以便在JavaScript与服务器端Java代码之间建立有效的通信。 首先,理解dwr.xml文件的结构至关重要。这是一个XML配置文件,用于定义哪些类和方法可以被跨域请求,以及如何在客户端上创建这些对象。配置主要包括以下几个部分: 1. `<allow>`标签区:此部分定义了DWR允许处理的类。你可以列出特定的类名,DWR将根据这些配置创建和转换对应的对象。这一步是安全控制的一部分,防止未授权的类访问。 2. `Creators`部分:这是配置对象创建的区域。每个`<create>`元素表示一个创建器,包括以下关键属性: - `creator`属性:这是必填的,指定使用哪种创建器。DWR 1.1提供多种创建器选项,如: - `new`: 使用Java的`new`关键字创建对象。 - `none`: 不创建对象,可能是因为对象已存在于服务器,或者在后续的生命周期内动态获取。 - `scripted`: 通过BSF(Bean Scripting Framework)使用脚本语言创建对象,如BeanShell或Groovy。 - `spring`: 使用Spring框架进行依赖注入。 - `jsf`: 在JSF环境中创建Bean。 - `struts`: 与Struts FormBean交互。 - `pageflow`: 在Beehive或Weblogic的PageFlow上下文中操作。 - `javascript`属性:指定客户端上对象的名称,需避免与JavaScript保留关键字冲突。 - `scope`属性:定义对象的生命周期范围,如`application`, `session`, `request`, 或 `page`。默认值为`page`,但为了使用`session`,可能需要依赖cookies,因为DWR不支持URL重写。 `<param>`元素用于传递额外的参数给特定的创建器,这些参数因创建器的不同而变化,例如新创建器可能需要知道要创建的具体类名。 DWR的配置过程涉及细致地指定哪些类和方法可以跨域访问,以及如何在客户端上根据需要创建和管理这些对象。理解这些概念并按照dwr.xml文件的结构进行配置,能够帮助开发者更有效地利用DWR的功能,实现无缝的前后端通信,提升用户体验。