dwr 入門實例HelloWorld
一、項目結構
見附件2009-9-27 14-13-25.jpg
二、代碼
1、web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name>dwr-invoker</servlet-name> <servlet-class>org.directwebremoting.servlet.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> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
2、dwr.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd"> <dwr> <allow> <create javascript="service" creator="new"> <param name="class" value="helloWorld.Service" /> </create> </allow> </dwr>
3、Service.java
package helloWorld;
/**
* 服務端
*
* @author duyanjun
* @version 1.0
*/
public class Service {
/**
* 顯示"hello World" 和 從客戶端傳來的信息
*
* @param yourName 從客戶端傳來的信息
* @return 服務器返回給客戶端的信息
*/
public String sayHello(String yourName){
return "hello World " + yourName;
}
}
4、index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<html>
<head>
<title>首頁</title>
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="dwr/util.js"></script>
<script type="text/javascript" src="dwr/interface/service.js"></script>
<script type="text/javascript">
/**
* 調用服務端sayHello方法
*/
function firstDwr(){
service.sayHello("Jorwen",callBackHello);
}
/**
* 回調方法,顯示從服務器返回的信息
*/
function callBackHello(data){
alert(data);
}
</script>
</head>
<body>
<input type="button" name="button" value="測試" onclick="firstDwr()">
</body>
</html>
三、結果
1、在地址欄中輸入:
的結果參照附件中result.jsp