`
zscomehuyue
  • 浏览: 414819 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

DWR的配置文件(4)---Signatures in dwr.xml

阅读更多
DWR的配置文件(4)---Signatures in dwr.xml

Signatures部分用于配置Collections中装载对象元素的类型.举个例子来说:下面的java代码没有办法对List集合中的对象进行转换.

public class Check

{

public void setLotteryResults(List nos)

{

      ...

}

}

Singatures配置允许我们对DWR要操作的对象类型进行配置.对于了解JDK5泛型编程的开发人员来说下面的格式是很容易理解的.

<signatures>

<![CDATA[

import java.util.List;

import com.example.Check;

Check.setLotteryResults(List<Integer> nos);

]]>

</signatures>

DWR有个专门用于解析上面配置语句的解析器,虽然上面的是JDK5中才有的特性,因为有解析器的原因这也可以应用与JDK5之前的版本.

解析规则是不可见的,但有两种例外情况.

一种情况是因为DWR1.0的解析器中有个Bug,在有些场合会无法处理返回值的类型.所以应该要避免这种情况的发生.

一种情况是因为解析器是一个语法宽松的解析器,他不象编译器一样对语法有非常严格的要求,所有有时可能一些重要的语句没有配置而无法事先发现.

<signatures>

<![CDATA[

import java.util.List;

Check.setLotteryResults(List<Integer>);

]]>

</signatures>

DWR的将来版本可能会采用符合java官方规范的解析器,这样可以避免许多出错的情况.

Signature部分只用于泛型参数到基本类型参数的转换,对于其他的类型DWR采用反射机制或运行时类型来确定.在没有泛型参数的情况下可以不配置Signature.

public void method(String p);

public void method(String[] p);

下面的就需要配置,因为反射机制无法完成次类功能.

public void method(List<Date> p);

public void method(Map<String, WibbleBean> p);

下面可以不用配置,DWR可以自动完成转换.

public void method(List<String> p);

public void method(Map<String, String> p);

下面可以不用设置,DWR可以采用运行时转换.

public List<Date> method(String p);

有一个值得注意的地方是在javascript中所有对象的keys都是一个字符串,你也可以把其他对象作为keys.他们在使用之前都会转换成字符串形式.DWR1.x将采用这个特性来转换成String.以后对象的转换将会在服务器端完成.
分享到:
评论

相关推荐

    DWR.xml配置文件说明书(含源码)

    4 Signatures in dwr.xml Signatures部分用于配置Collections中装载对象元素的类型.举个例子来说:下面的java代码没有办法对List集合中的对象进行转换. public class Check { public void setLotteryResults(List ...

    DWR.xml配置文件说明

    ### DWR.xml配置文件详解 #### 一、DWR配置文件结构与作用 DWR(Direct Web Remoting)是一个开源的Ajax框架,它允许在浏览器端JavaScript代码直接调用服务器端Java方法,从而简化了传统的AJAX编程。DWR.xml是DWR...

    DWR.xml配置文件说明书.txt

    ### DWR.xml配置文件详解 #### 一、概述 DWR (Direct Web Remoting) 是一个简化Ajax开发的Java框架,它允许JavaScript直接调用服务器端的Java方法,从而简化了客户端与服务器之间的交互过程。在DWR中,配置文件dwr...

    DWR配置文件详解,DWR配置

    DWR的核心配置文件是`dwr.xml`,该文件定义了DWR允许访问的Java对象、转换规则以及方法签名等关键设置。 ### 1. `dwr.xml` 结构 `dwr.xml`的基本结构如下: ```xml &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//...

    DWR中文文档--简单实用的小型Ajax框架

    - **配置web.xml**:在项目的部署描述文件中配置DWR的相关参数。 - **创建服务接口**:定义服务接口供客户端调用。 - **编写JSP页面**:在前端页面中使用DWR提供的API进行数据请求和展示。 ##### 1.2 HelloWorld...

    dwr 配置文件详解

    `dwr.xml` 文件是DWR的核心配置文件,它定义了哪些服务器端对象和服务可以被远程访问以及它们如何被远程访问。`dwr.xml` 文件通常位于项目的`WEB-INF`目录下,并遵循以下结构: ```xml &lt;!DOCTYPE dwr PUBLIC "-//...

    dwr配置

    DWR的核心是通过XML配置文件(DWR.xml)来定义哪些Java对象可以被远程调用以及如何进行数据转换。 首先,我们来看DWR.xml配置文件的基本结构: ```xml &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web...

    dwr配置文件详解

    配置文件`dwr.xml`是DWR的核心配置,用来定义哪些Java对象可以被远程访问,以及如何转换这些对象以适应JavaScript环境。 在DWR配置文件中,主要分为以下几个部分: 1. **DOCTYPE声明**: 首先,`&lt;!DOCTYPE&gt;`声明...

    Dwr配置详解.doc

    dwr.xml文件是DWR的核心配置文件,用于定义 remotable对象、转换器和签名信息。 ```xml &lt;dwr&gt; &lt;!-- 使用new关键字创建一个Java实例 --&gt; &lt;!-- 指定创建的Java实例的实现类 --&gt; ...

    dwr.xml标签介绍

    在DWR框架中,`dwr.xml`配置文件起着至关重要的作用,它定义了哪些Java对象可以被远程调用,以及如何进行转换和创建。 在`dwr.xml`文件中,主要包含以下几个部分: 1. **初始化(init)**: 这一部分定义了自定义...

    DWR配置文件详解

    ### DWR配置文件详解 #### 一、基本概念与术语...DWR配置文件`dwr.xml`是实现DWR功能的关键。通过合理配置各个元素,可以实现对远程Bean的安全、灵活的管理。了解每个元素的功能和用法对于充分发挥DWR的优势至关重要。

    DWR中文文档(pdf)

    - **配置文件**: 编辑`web.xml`和`dwr.xml`文件,设置DWR的工作模式和各种参数。 ##### 1.2 HelloWorld示例 - **配置文件编辑**: 在`web.xml`中添加DWR相关的servlet和filter配置。 - **编写Service**: 创建一个...

    Ajax DWR中文文档.pdf

    - `dwr.xml`文件是DWR的核心配置文件,用于定义服务接口和服务方法。 **3.2 标签** - 用于初始化DWR环境,设置全局参数。 **3.3 标签** - 控制对服务方法的访问权限。 - **3.3.1 Creator** - 定义服务对象的创建...

    DWR2.0中文文档

    - 配置`web.xml`和`dwr.xml`文件,定义服务和转换规则。 - 编写服务接口和实现类。 - 测试DWR是否正常工作。 - 创建JSP页面,调用DWR服务。 #### web.xml配置 - 主要配置包括DWR过滤器的初始化参数,这些参数...

    dwr中文文档dwr中文文档dwr中文文档

    - `dwr.xml`是DWR的核心配置文件,用于指定服务的配置细节。 **3.2 `&lt;init&gt;`标签** - 用于配置全局设置,例如:日志级别、调试模式等。 **3.3 `&lt;allow&gt;`标签** - **3.3.1 Creator**: 定义了创建服务对象的方式。 ...

    DWR中文文档v0.9

    3. **第3章:dwr.xml配置** - 探讨了dwr.xml文件的结构和各个标签的作用,如`&lt;init&gt;`、`&lt;allow&gt;`和`&lt;signatures&gt;`等。 4. **第4章:整合** - 讨论了如何将DWR与其他流行框架(如Spring、JSF、Struts、Weblogic、...

Global site tag (gtag.js) - Google Analytics