DWR的使用经验:
1.. 需要jdom.jar和bsf.jar,否则无法跟spring整合.
2.. dwr生成的javascript函数会自动加一个回调函数的参数,如原来的函数是checkExist(String name),那么生成的javascript函数是checkExist(callbackFunc,String name).
3.. 注意回调函数只能有一个参数,就是服务器的返回值,如function(messFromServer),这里messFromServer是该操作在服务器上的返回值.
4.. util.js里面有很多有用的方法,最好熟悉一下.
5.. convert并不是必须的,只有你的函数需要传递非基本数据类型的数据时需要此项.
我需要增强的,dom操作,javascript
DWR collection converter 使用摘要
<convert converter="collection" match="java.util.Collection"/>但是不知道怎么用,从 Java Object --> Javascript Object 问题不大,有现成的例子可供参考 :),就是 Java function 返回一个Collection,看了一下返回值在 javascript 中是的形式是一个object Array然后在 javascript 取出每一个 Object的 property (eg. object.id , objecct.name....)
下面是一个应用实例---------------------DWR.XML------------------------------
<dwr>
<allow>
<convert converter="bean" match="dwr.sample.Apartment"/>
<create creator="new" javascript="ApartmentDAO" class="dwr.sample.ApartmentDAO">
<include method="findApartments"/>
<include method="countApartments"/>
<include method="addApartment"/>
<include method="addApartments"/>
<include method="addApartments2"/>
</create>
<create creator="spring" javascript="ApartmentDAO" >
</create>
</allow>
<signatures>
<![CDATA[import java.util.*;
import dwr.sample.*;
ApartmentDAO.addApartments(List<Apartment>);
ApartmentDAO.addApartments2(Map<String,Apartment>);
]]>
</signatures>
</dwr>
如果传如 java 的代码的参数 是一个 Collection ,则要稍微处理以下,先照上面 黑体字 的声明以下传入的Collection的内部包含的类的 确切类型,以便 Java 代码 作出判断;如果传入的参数是一个 List,则在 Javascript 中把这些对象放在 一个Array中就可以了,如果传入的参数是一个Map,原来以为是一个 二维的 Array就行了,但是试过之后发现不行,看了一下例子,原来要使用这种形式: var depts={ "dept1":new department("2", "200"),"dept2":new department("3", "300") };这样传进去之后 Java 就会根据 这些 数据构建 一个Map,
posted on 2007-07-26 16:01
有猫相伴的日子 阅读(625)
评论(1) 编辑 收藏 所属分类:
dwr