DWR之HELLO world

 DWR的原理爲:把JAVA類注入JS從且達到可以在JS中調用JAVA類中的方法,實現了異步調用。
同GWT相比DWR的優點有一、DWR可以同JS和HTML同步調用,從且解決GWT中頁面美工排
版的困難。二、dwr是把JAVA類注入JS中,而不需要學習新的技術。
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>
</web-app>

dwr文件配置如下:

<?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 creator="new" javascript="service">
   <param name="class" value="cn.epem.admin.Service" />
  </create>
 </allow>
</dwr>

test.jsp

<%@ page language="java" pageEncoding="UTF-8"%>
<html>
 <head>
  <title>My JSP 'first_dwr.jsp' starting page</title>
  <script type="text/javascript" src="<%=request.getContextPath()%>/loadreport.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/dwr/engine.js"></script>
  <script type="text/javascript" src="<%=request.getContextPath()%>/dwr/util.js"></script>
  <script type='text/javascript' src='<%=request.getContextPath()%>/dwr/interface/service.js'> </script>
  
 </head>
 <body>
  <input type="button" name="button" value="測試" οnclick="firstDwr()">
 </body>
</html>


loadreport.js

    function firstDwr(){
   service.sayHello("Jorwen",callBackHello);
   }
   function callBackHello(data){
    alert(data);
    }


Service.java

package cn.epem.admin;

public class Service {
 public String sayHello(String yourName) {
  System.out.println(yourName);
  return "Hello World " + yourName;
 }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章