在这里config*****意思是param-name要以字符串'config'开头。这个参数可以根据需要使用多次,但是不能相同。 一个使用J2EE的安全机制的例子:
使用插件(Plug-in)
DWR里的很多部件都是可插入的,所以所以可以通过替换掉DWR的默认实现类来改变其功能。你可以在
? ? ? ? ? ?
uk.ltd.getahead.dwr.AccessControl uk.ltd.getahead.dwr.Configuration
uk.ltd.getahead.dwr.ConverterManager uk.ltd.getahead.dwr.CreatorManager uk.ltd.getahead.dwr.Processor
uk.ltd.getahead.dwr.ExecutionContext
这些可插入点默认的实现都在uk.ltd.getahead.dwr.impl中。
使用debug/test模式
你可以通过下面的参数让DWR进入debug/test模式:
在debug模式里,DWR会为每一个远程调用类生成一个测试页面。这对于检查DWR是否工作和工作的怎么样是很有用的。这个模式还可以警告你一些存在的问题:javascript保留字问题,或者函数重载问题。
尽管如此,这个模式不应该使用在实际部署环境里面,因为它可以为攻击者提供你的服务的大量信息。如果你的网站设计的好的话,这些信息不会帮助攻击者窥视你的网站内容,但是还是不要给任何人一个找到你错误的机会好。
DWR就是照上面的样子做的,没有任何保证,所以你的网站的安全是你的责任。请小心。 配置DWR - dwr.xml
dwr.xml是DWR的配置文件。默认情况下,应该把它放到WEB-INF目录(web.xml的目录)下。
创建dwr.xml文件 dwr.xml文件的结构如下:
\ \>
这里是一些必须理解的术语 - 参数会被converted,远程Bean会被created。所以如果你有一个叫A的bean,它有一个方法叫A.blah(B) 那么你需要一个A的creator和一个B的converter。
allow段落里面定义的试DWR可以创建和转换的类。 Creators
我们要调用的每个类都需要一个
The Creators – 创造器
dwr.xml文件中的create元素的结构如下:
这里的多数元素都是可选的 - 你真正必须知道的是指定一个creator和一个javascript名字。
creator属性 是必须的 - 它用来指定使用那种创造器。
默认情况下DWR1.1有8种创造器。它们是:
?
new: 用Java的new关键字创造对象。
'new' 创造器
new创造器在DWR中已经默认声明了: class=\ 。你不需要在dwr.xml文件中添加这段话,它已经存在于DWR的内部dwr.xml文件中了。 这个创造器通过类默认的够早函数创造对象实例。用new创造器有一些好处: ? ? 安全:DWR创造的对象生存的事件越短,多次调用中间的值不一致的错误机会越少。 内存消耗低: 如果你的站点用户量非常大,这个创造器可以减少VM的内存溢出。 你可以通过下面的方式使用new创造器来创造远程调用Bean: 这些代码把 java.util.Date 映射成Javascript,并且命名为Blah,所以在Javascript 中当你调用Blah.toString(reply) 那么一个新的 java.util.Date 就会通过默认的构造函数创造出来, 然后 toString() 方法被调用, 然后结果数据返回给reply方法(在这个例子中date是字符串格式)。 ? ? ? none: 它不创建对象,看下面的原因。 (v1.1+) scripted: 通过BSF使用脚本语言创建对象,例如BeanShell或Groovy。 spring: 通过Spring框架访问Bean。 让DWR和Spring一起工作的步骤 1. 确认你用的是最新版的DWR。Spring创造器已经有了变化,所以你最好检查一下 DWR的最新版本。 2. 确认你查看过开始指南中的内容。 3. 确认你的Spring的Bean在DWR外面运行良好。 4. 配置DWR和Spring一起工作。 (看下面) 5. 查看演示页面: http://localhost:8080/[ YOUR-WEBAPP ]/dwr ,检查spring 的Bean是否出现。