dwr 環境搭建。

步驟:javascript

  1. 導入 dwr.jar 和 commons-logging-1.1.1.jar 包,由於dwr依賴與 commons-logging-1.1.1.jarhtml

  2. web.xml 中配置 dwrjava

<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>

 3. 新建須要 js 調用的 java類 DwrHello.javaweb

package com;

public class DwrHello {
	
	public String hello(String world){
		System.out.println("hello "+world);
		return "hello "+world;
	}

}

 4. web-inf 下新建一個 dwr.xml , 以下:app

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC  
    "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"  
    "http://getahead.org/dwr/dwr20.dtd">
<dwr>
	<allow>
		<create creator="new" javascript="DwrHello">
			<param name="class" value="com.DwrHello" />
		</create>
	</allow>
</dwr>

 5. 新建 index.jspjsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    <title>DWR  DEMO</title>
  </head>
  <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/DwrHello.js"></script>

  <script type="text/javascript">
  	DwrHello.hello("世界",function(data){
  		alert(data);
  	});
  </script>
  <body> 
   
  </body>
</html>

注意:函數

engine.js/util.js 必須如上面所寫url

DwrHello.js  對應的是 DwrHello.java ,在 dwr.xml 中配置的。spa

DwrHello.hello("世界"); 這樣便可調用 DwrHello.java 中的 hello(String world) 方法。debug

DwrHello.hello("世界",function(data){

  alert(data);

 }); 這樣子採用回調函數獲得 hello(String world) 方法的返回值。

相關文章
相關標籤/搜索