DWR配置文件解析
发布时间:2020-12-16 00:32:06 所属栏目:百科 来源:网络整理
导读:!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd"!-- 整个配置文件的大体结构如下: --dwr !-- init 部分声明那些用于建立远程bean和在方法调用中转换bean的类.这部分是可选择性配
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd"> <!-- 整个配置文件的大体结构如下: --> <dwr> <!-- <init> 部分声明那些用于建立远程bean和在方法调用中转换bean的类.这部分是可选择性配置的, 如果你想定义一个新的creator(创造器)或者converter(转换器),那么就必须在部分中声明, 每个creator和converter需要有个id属性来允许以后进行引用。 --> <init> <creator id="..." class="..."/> <converter id="..." class="..."/> </init> <!-- <allow>部分定义了DWR能够创建和转换的类,以供javascript访问 --> <allow> <!-- <create>标签中指定 javascript 中可以访问的 java 类,并定义 dwr 应当如何获得要进行远程的类的实例。 (1) javascript="testClass" 属性指定 javascript 代码访问对象时使用的名称。 (2) creator是类构造器,creator="new" 属性指定 java 类实例的生成方式, new意味着 DWR 应当调用类的 默认构造函数来获得实例,其他的还有 spring 方式,通过与 IOC 容器 Spring 进行集成来获得实例等等。 默认情况下DWR1.1有8种创造器。它们是: new: 用Java的new关键字创造对象。 none: 它不创建对象。 (v1.1+) spring: 通过Spring框架访问Bean。 jsf: 使用JSF的Bean。 (v1.1+) struts: 使用Struts的FormBean。 (v1.1+) (3) 还有一个属性为scope,默认为page.其值还有application、session、request、script。 --> <create creator="..." javascript="..." scope="..."> <!-- <creator>下的配置节点: <param> 标签指定要公开给 javascript 的 java 类名。 <include> 标签指定要公开给 javascript 的方法。不指定的话就公开所有方法。 <exclude> 标签指定要防止被访问的方法。 <auth> 标签指定一个J2EE角色作为访问控制检查。 --> <param name="..." value="..."/> </create> <!-- <convert> 标签由于dwr只支持json的数据格式,因此在dwr中我们要读取javaBean中的属性, 就必须将其转换成json的数据格式 --> <convert convertor="..." match="..."/> </allow> <signatures> ... </signatures> </dwr>DWR已经默认定义和初始化了常用的Converter,他们分别如下:
<converter id="null" class="uk.ltd.getahead.dwr.convert.NullConverter"/> <converter id="primitive" class="uk.ltd.getahead.dwr.convert.PrimitiveConverter"/> <converter id="bignumber" class="uk.ltd.getahead.dwr.convert.BigNumberConverter"/> <converter id="string" class="uk.ltd.getahead.dwr.convert.StringConverter"/> <converter id="date" class="uk.ltd.getahead.dwr.convert.DateConverter"/> <converter id="array" class="uk.ltd.getahead.dwr.convert.ArrayConverter"/> <converter id="map" class="uk.ltd.getahead.dwr.convert.MapConverter"/> <converter id="collection" class="uk.ltd.getahead.dwr.convert.CollectionConverter"/> <converter id="bean" class="uk.ltd.getahead.dwr.convert.BeanConverter"/> <converter id="hibernate" class="uk.ltd.getahead.dwr.convert.HibernateBeanConverter"/> <converter id="dom" class="uk.ltd.getahead.dwr.convert.DOMConverter"/> <converter id="dom4j" class="uk.ltd.getahead.dwr.convert.DOM4JConverter"/> <converter id="jdom" class="uk.ltd.getahead.dwr.convert.JDOMConverter"/> <converter id="xom" class="uk.ltd.getahead.dwr.convert.XOMConverter"/> <converter id="servlet" class="uk.ltd.getahead.dwr.convert.ServletConverter"/>如果List、Set或Map中的类型均为简单类型(包括其封装类)或String、Date、数组和集合类型、则不需要<convert>标签。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |