1 在[url]http://directwebremoting.org/dwr/downloads/index.html[/url]下载dwr.
2 将dwr.jar包添加到项目dwrTest的lib下,在web.xml中配置dwr
除了debug参数外,还有其他参数,见[url]http://directwebremoting.org/dwr/documentation/server/configuration/servlet/index.html[/url]
3. java类:UserDwr
在spring框架的配置文件applicationContext.xml中添加
在WEB-INF下的dwr.xml文件中添加
creator和javascript是必需参数,其他的可以不用。其中,creator的几个参数如下:
new:Java用“new”关键字创造对象
none:它不创建对象 (v1.1+)
scripted:通过BSF使用脚本语言创建对象,例如BeanShell或Groovy
spring:通过Spring框架访问Bean
struts:使用Struts的FormBean (v1.1+)
jsf:使用JSF的Bean (v1.1+)
pageflow:访问Weblogic或Beehive的PageFlow (v1.1+)
ejb3:使用EJB3 session bean (v2.0+)
如果调用的不是整个java类,而是其中某些方法,可以使用<include method=""/>之间指定方法,也可以指定不能调用的方法<exclude method=""/>,如上注释部分
4. 在jsp页面中添加3个js文件,如下:
5. 部署运行,在chrome浏览器中输入:[url]http://localhost:8080/dwrTest/dwr[/url],如果出现
userDwr (SpringCreator for com.test.dwr.UserDwr),则表示成功,点击userDwr,进入测试页,找到hello方法“hello( ); execute”,输入相关参数(这里不用输入,因为hello()方法没有参数输入),点击execute,如果在execute后面出现“hello”,则表示可以调用该方法,否则表示配置失败或hello方法中有错误。
2 将dwr.jar包添加到项目dwrTest的lib下,在web.xml中配置dwr
<!-- 配置dwr -->
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
<!-- 指定DWR的Servlet处于调试状态 -->
<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>
除了debug参数外,还有其他参数,见[url]http://directwebremoting.org/dwr/documentation/server/configuration/servlet/index.html[/url]
3. java类:UserDwr
public class UserDwr{
public String hello(){
return "hello";
}
}
在spring框架的配置文件applicationContext.xml中添加
<bean id="userDwr" class="com.test.dwr.UserDwr">
</bean>
在WEB-INF下的dwr.xml文件中添加
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd">
<dwr>
<allow>
<!-- spring表示的是通过spring框架的bean来访问java类-->
<create creator="spring" javascript="userDwr">
<param name="beanName" value="userDwr"/>
<!--
<include method=""/>
<exclude method=""/>
-->
</create>
</allow>
</dwr>
creator和javascript是必需参数,其他的可以不用。其中,creator的几个参数如下:
new:Java用“new”关键字创造对象
none:它不创建对象 (v1.1+)
scripted:通过BSF使用脚本语言创建对象,例如BeanShell或Groovy
spring:通过Spring框架访问Bean
struts:使用Struts的FormBean (v1.1+)
jsf:使用JSF的Bean (v1.1+)
pageflow:访问Weblogic或Beehive的PageFlow (v1.1+)
ejb3:使用EJB3 session bean (v2.0+)
如果调用的不是整个java类,而是其中某些方法,可以使用<include method=""/>之间指定方法,也可以指定不能调用的方法<exclude method=""/>,如上注释部分
4. 在jsp页面中添加3个js文件,如下:
<html>
<head>
<!-- dwr -->
<script type="text/javascript" src="/dwrTest/dwr/interface/userDwr.js"></script>
<script type="text/javascript" src="/dwrTest/dwr/engine.js"></script>
<script type="text/javascript" src="/dwrTest/dwr/util.js"></script>
<!-- dwr -->
</head>
<body>
<form name="" method="post">
<input type="button" onclick="hello();"/>
</form>
<body>
<script type="text/javascript">
function hello(){
userDwr.hello(callbackFun);
}
function callbackFun(data){
alert(data);
}
</script>
</html>
5. 部署运行,在chrome浏览器中输入:[url]http://localhost:8080/dwrTest/dwr[/url],如果出现
userDwr (SpringCreator for com.test.dwr.UserDwr),则表示成功,点击userDwr,进入测试页,找到hello方法“hello( ); execute”,输入相关参数(这里不用输入,因为hello()方法没有参数输入),点击execute,如果在execute后面出现“hello”,则表示可以调用该方法,否则表示配置失败或hello方法中有错误。