DWR.xml标签详解:创建与转换关键要素

需积分: 9 1 下载量 188 浏览量 更新于2024-10-24 收藏 88KB DOC 举报
DWR (Direct Web Remoting) 是一种简化JavaScript与服务器端Java对象交互的技术,它允许客户端直接调用服务器上的方法,而无需进行传统的HTTP请求/响应过程。在实现DWR功能时,关键的配置文件是`dwr.xml`,它定义了远程方法调用的行为和数据转换规则。 `dwr.xml` 文件的结构分为几个主要部分: 1. **声明和DTD**: 文档类型定义(DOCTYPE)表明文档遵循DWR规范,指定版本为1.0,并引用了DWR的DTD地址。 2. **初始化部分** (`<init>`):虽然不是必需的,但若扩展了DWR的功能,可能需要在此声明一些全局设置,如创建器(creators)和转换器(converters)。这里可以配置默认的创建器和转换器。 3. **允许部分** (`<allow>`):这是核心部分,定义了DWR被允许执行的操作,包括对象的创建(create)和转换(convert)。 `<create>` 元素用于声明哪些类允许被DWR创建,包括指定使用的`creator`(如new、none、scripted等),以及相关的属性如JavaScript函数名、作用域(scope)、权限管理和方法的包括/排除。 - `creator`属性:这是必填项,用于指定创建对象的方式,如`new`表示使用Java的`new`关键字,`spring`表示通过Spring IoC容器创建,`scripted`则通过脚本语言(如BeanShell或Groovy)。 4. **签名部分** (`<signatures>`):虽然没有在给定的部分中展示,但此标签用于声明方法签名,当对象的方法名或参数类型发生变化时,可以在这里更新以确保正确地处理。 5. **参数转换**:当远程方法接受参数时,这些参数会经过`converter`处理。如果方法接受不同类型的参数,比如`A.blah(B)`,那么需要为`A`提供一个`creator`,同时为`B`提供一个`converter`,以确保数据能够在客户端和服务器之间正确地序列化和反序列化。 总结来说,`dwr.xml`配置文件是DWR系统的核心配置,它确保了客户端能够与服务器上的对象高效、安全地通信。理解并正确配置`<creator>`、`<converter>`和`<allow>`元素对于实现DWR的功能至关重要。同时,根据具体需求调整签名和参数转换,可以进一步优化性能和兼容性。