1、下载dwr开发包,其中必须的jar包:dwr.jar、commons-logging-1.0.4.jar。
2、在web.xml中加入如下:
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<display-name>DWR Servlet</display-name>
<description>Direct Web Remoter Servlet</description>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<!-- This should NEVER be present in live -->
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
3、在WEB-INF下面加入dwr.xml,文件内容如下:
<dwr>
<allow>
<create creator="new">
<param name="class" value="com.ygtime.model.MyDwr"/>
</create>
</allow>
</dwr>
dwr会根据com.ygtime.model.MyDwr类生成MyDwr.js,里面有名为MyDwr的对象。
4、启动项目后,DwrServlet会读取dwr.xml文件,根据<create>标签,
会产生一个名为MyDwr.js,通过 /应用名/dwr/interface/MyDwr.js可以访问到。
5、 com.ygtime.model.MyDwr类如下:
public class MyDwr {
public String hello(String name){
System.out.println(name);
return "hello "+name;
}
}
6、 在页面中加入如下内容:
<script type="text/javascript" src="${pageContext.request.contextPath}/dwr/engine.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/dwr/interface/MyDwr.js"></script>
<script type="text/javascript">
var hello = function(data){
alert(data);
}
MyDwr.hello("youyang",hello);
</script>
在MyDwr.js中已经定义好了一个叫 MyDwr的对象,该对象是dwr根据 com.ygtime.model.MyDwr类产生的,
里面有 MyDwr类的方法可以直接在js中使用。