JAVA平台的AJAX 框架DWR使用
DWR现在已经在java平台的AJAX应用中使用比较广泛,下面将以前项目中用到的部分内容(测试部分)贴出来,以供参考。配置使用什么的就不多说了,在网上搜一下就很多,非常简单。
只简单的说一下流程,然后直接把文件中的内容贴出来。具体的使用也可以参考dwr的网站:http://directwebremoting.org/dwr
1.首先在web.xml中配置dwr,以便在项目中使用
2.编写java应用,并在dwr.xml中配置(我的dwr.xml在web-info下)。
3.在jsp文件中调用
例如:
TestDwr.java中有一个方法public String test2(); 如果想在jsp页面中通过ajax方式调用步骤如下:
在dwr.xml中将方法公布出来
[*]<!--测试,调用方法-->
[*]<createjavascript="testdwr"creator="new">
[*]<paramname="class"value="com.yinbo.umpay.test.TestDwr"/>
[*]<includemethod="test1"/>
[*]<includemethod="test2"/>
[*]<includemethod="test3"/>
[*]<includemethod="test4"/>
[*]<includemethod="test5"/>
[*]<includemethod="test6"/>
[*]<includemethod="test7"/>
[*]<includemethod="test8"/>
[*]<includemethod="test9"/>
[*]</create>
javascript="testdwr"是指会生成testdwr.js的文件供前台调用。value="com.yinbo.umpay.test.TestDwr"是指方法所在的类,creator="new"是构造方法,这里使用new对象的方法,也可以通过spring来管理。这里注意即使用在TestDwr.java中是public方法,也要在配置文件中发布出来才可以访问。
在jsp中调用如下:
先要引入
<script src='<c:url value="/dwr/engine.js"/>' ></script>
<script src='<c:url value="/dwr/util.js"/>' ></script>
这两个js是支持库,必须引入。然后就是引入
<script src='<c:url value="/dwr/interface/testdwr.js"/>'></script>
这个testdwr.js是dwr动态生成的,你不用去寻找它放在哪儿。
jsp中的调用
function callTestMethod2(){
testdwr.test2(callBackFortestMethod2);
}
function callBackFortestMethod2(data){
// 其中 date 接收方法的返回值
// 可以在这里对返回值进行处理和显示等等
alert("the return value is " + data);
}
<input type="button"
value="调用有简单返回值的java方法">
这里的调用使用testdwr这个对象引用方法。testdwr.test2(callBackFortestMethod2); 返回值会传入callBackFortestMethod2方法的参数中。
web.xml
<div class="highlighter">
[*]<!--dwr-->
[*]<servlet>
[*]<servlet-name>dwr-invoker</servlet-name>
[*]<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
[*]<init-param>
[*]<param-name>debug</param-name>
[*]<param-value>true</param-value>
[*]</init-param>
[*]</servlet>
[*]<servlet-mapping>
[*]<servlet-name>dwr-invoker</servlet-name>
[*]<url-pattern>/dwr/*</url-pattern>
[*]</servlet-mapping>
页:
[1]