DWR(Direct Web Remoting)是一种Java库,用于在客户端JavaScript和服务器端Java之间实现双向通信,从而在Web应用中实现实时交互。DWR的核心是通过XML配置文件(DWR.xml)来定义哪些Java对象可以被远程调用以及如何进行数据转换。 我们来看DWR.xml配置文件的基本结构: ```xml <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd"> <dwr> <init> <!-- Creators and Converters configuration --> </init> <allow> <!-- Class creation and conversion definitions --> </allow> <signatures> <!-- Method signatures for security --> </signatures> </dwr> ``` `<init>`部分是可选的,用于定义`creator`和`converter`。`creator`用于创建远程Java对象,而`converter`则负责将Java对象转换为JavaScript可以理解的格式,反之亦然。例如,如果你有一个名为`A`的远程Bean,其中有一个`A.blah(B)`的方法,你需要为`A`创建一个`created`,并为`B`创建一个`converted`。 在`<allow>`部分,你需要明确指定哪些类可以被创建(`create`元素)和转换(`convert`元素)。默认情况下,DWR已经支持一些基本类型和常见类的转换,如`String`、`Date`和简单的集合类型。但是,如果要创建新的远程对象,必须在这里声明。 DWR内置了一些常见的Converter,包括: 1. `null` - 处理空值 2. `primitive` - 基本类型转换 3. `bignumber` - 大数值转换 4. `string` - 字符串转换 5. `date` - 日期转换 6. `array` - 数组转换 7. `map` - 映射转换 8. `collection` - 集合转换 在使用自定义的转换器或创建器时,需要在`<init>`部分声明它们,并赋予唯一的`id`属性,以便在`<allow>`部分引用。 `<signatures>`部分主要用于安全性,你可以在这里定义允许的Java方法签名,防止未授权的JavaScript调用服务器上的方法。 DWR.xml配置文件是DWR工作的重要组成部分,它定义了JavaScript与Java之间的交互规则,包括哪些Java对象可以被暴露给JavaScript,以及数据转换的规则。正确配置DWR.xml是确保DWR功能正常且安全的关键步骤。在实际开发中,根据项目需求灵活调整和扩展这些配置是非常重要的。
- 粉丝: 10
- 资源: 107
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助