DWR使用
发布时间:2020-12-16 00:38:18 所属栏目:百科 来源:网络整理
导读:第一步:下载DWR包。 从网站(http://directwebremoting.org/dwr/download)下载最新的dwr.jar包,放在你的Application的WEB-INF/lib目录下。 第二步:配置web.xml文件。 在web.xml文件的web-app/web-app标签中,添加如下配置: servletservlet-namedwr-invo
第一步:下载DWR包。 在web.xml文件的<web-app></web-app>标签中,添加如下配置:
<servlet> <servlet-name>dwr-invoker</servlet-name> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> 第三步:配置dwr.xml文件。 在你的Application的WEB-INF下新建dwr.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.ltd.uk/dwr/dwr20.dtd"> <dwr> <allow> <create creator="new" javascript="Pict" scope="application"> <param name="class" value="bean.Pict"/> <include method="method1" /> </create> </allow> </dwr>解释: creator="new"属性指定java类实例的生成方式。"new"意味着DWR应该调用类的默认构造函数来获得类的实例,一般我们用这个就可以搞定了。当然还有其它的方式,目前我还没有用到,就不说了。 javascript="Pict"指定JavaScript代码访问Java对象的时候使用的名称 标签指定要公开给JavaScript的java类名 <include>标签指定要公开给JavaScript的方法,不指定的话公开所有的方法 第四步:在JS中调用 1. 引入JavaScript脚本
<script language="javascript1.2" src="dwr/interface/Pict.js"></script> <script language="javascript1.2" src="dwr/util.js"></script> <script language="javascript1.2" src="dwr/engine.js"></script> 其中第一个导入的标签脚本必须是手动写入,名字和<create>标签中的属性JavaScript的值相等,其后缀为.js。你只要在这里手动写入就可以了,实际由dwr根据配置文件自动生成其内容。util.js和engine.js是dwr自带的脚本文件 2. 编写调用java方法的JS函数 比如:下面是一个没有参数,没有返回值的函数调用。 Function callJava(){ Pict.method1(); }如果无参数,有返回值:
Function callJava(){ Pict.method1(retu);//retu称之为回调函数,实际就是将返回值赋给了这个函数 } Function retu(data){ Alert(data);//这里的data的值才是实际上的方法method1的返回值。 } 如果有参数,也有返回值,可直接在方法中加入到回调函数的前面即可 总的来说,参数和回调函数都放在方法的括号中,遵循的原则是回调函数总是最后一个,有参数就往其前面写,没有就不用写了 基本上的用法如上,但还有一些细节,比如返回值是JavaBean,Map等,都需要进一步的配置 如果Java方法返回的是JavaBean,则要做以下调整
<dwr> <allow> <create creator="new" javascript="testJavaclass" scope="application"> <param name="class" value="com.dwr.testJavaclass"/> <include method="testMethod" /> </create> <convert converter="bean" match="bean.DuanInfo" /> </allow> </dwr>convert 元素的作用是告诉DWR在服务器端Java对象表示和序列化的JavaScript之间如何转换数据类型。 一般将JavaBean转化为JavaScript中的对象类型。 convert=“bean” 属性指定要将JavaBean转换到JavaScript中。 match 属性指定要转换的JavaBean的完整路径名。 param 标签指定要转换的JavaBean的属性,此标签可省略,认为是转换所有属性。 2.在JavaScript 中调用。 调用没有改变,和(1)说的一样 3.对返回值的处理 此时我们将返回值看作是一个Object类型,因此在JavaScript中使用Object的用法调用。比如: testJavaclass. testMethod(k,function(vector) { if(vector == null || vector==[]) { return; } for(var i =0 ; i<vector.length;i++) { var a = vector[i].offsetX; var b = vector[i].offsetY; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 甩掉ashx和asmx使用jQuery.ajaxWebService请求WebMethod简练
- PostgreSql 的 RETURNING 一个使用经验
- SQLITE – 正确地将行转换为列
- c# – 在客户端对象模型中使用Linq对象模型来自sharepoint
- swift 快速奔跑的兔几 本节的内容是:函数(函树?嘿嘿嘿^.^
- ajax 实现 文件下载
- assembly – 如何在Commodore 64中更改内核SCNKEY例程行为
- 如何使用XmlStarlet将具有属性的元素插入XML文件?
- c# – 垃圾收集应该删除对象,但WeakReference.IsAlive仍然返
- 使用gnu工具链编译没有依赖关系的二进制文件的基础知识