DWR——Direct Web Remoter Servlet

供给那些想要以一种简单的方式使用Ajax和XMLHttpRequest的开发者。它具有一套JavaScript功能集,它们把从HTML页面调用应用服务器上的Java对象的方法简化了。它操控不同类型的参数,并同时保持了HTML代码的可读性。

DWR不是对一个设计的插入,也不强迫对象使用任何种类的继承结构。它和servlet框架内的应用配合的很好。

 

配置步骤:

1.拷贝dwr.jar到WEB-INF/ lib下   下载地址:http://getahead.ltd.uk/dwr/

2.在web.xml中增加dwr配置,WEB-INF目录中建立一个dwr.xml

 

  1. <servlet>
  2. <servlet-name>dwr-invoker</servlet-name>
  3. <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
  4. <!-- 设置为调试模式 -->
  5. <init-param>
  6. <param-name>debug</param-name>
  7. <param-value>true</param-value>
  8. </init-param>
  9. </servlet>
  10. <servlet-mapping>
  11. <servlet-name>dwr-invoker</servlet-name>
  12. <url-pattern>/dwr/*</url-pattern>
  13. </servlet-mapping>

3.建立一个被调用的类,和普通java类没有区别

  1. package dwr.test;
  2. public class Service {
  3. public String getMessage()
  4. {
  5. return "this is the dwr invoke test!";
  6. }
  7. }

4.在WEB-INF下增加dwr的配置文件dwr.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd">
  3. <dwr>
  4. <allow>
  5. <create javascript="service" creator="new">
  6. <param name="class" value="dwr.test.Service" />
  7. </create>
  8. </allow>
  9. </dwr>

5.书写调用

  1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
  2. <html>
  3. <head>
  4. <title>首页</title>
  5. <mce:script type="text/javascript" src="dwr/engine.js" mce_src="dwr/engine.js"></mce:script>
  6. <mce:script type="text/javascript" src="dwr/util.js" mce_src="dwr/util.js"></mce:script>
  7. <mce:script type="text/javascript" src="dwr/interface/service.js" mce_src="dwr/interface/service.js"></mce:script>
  8. <mce:script type="text/javascript"><!--
  9. // 调用服务端getMessage方法
  10. function firstDwr(){
  11. service.getMessage(callBackHello);
  12. }
  13. // 回调方法,显示从服务器返回的信息
  14. function callBackHello(data){
  15. alert(data);
  16. }
  17. // --></mce:script>
  18. </head>
  19. <body>
  20. <input type="button" name="button" value="测试" onclick="firstDwr()">
  21. </body>
  22. </html>

注意:

这两个js引入是dwr框架的

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

是在dwr.xml中我们配置的   <create javascript="service"

调用dwr与调用java方法类似,但调用后存在一个回调函数,结果由回调函数处理

 

6.结果:

DWR——Direct Web Remoter Servlet

供给那些想要以一种简单的方式使用Ajax和XMLHttpRequest的开发者。它具有一套JavaScript功能集,它们把从HTML页面调用应用服务器上的Java对象的方法简化了。它操控不同类型的参数,并同时保持了HTML代码的可读性。

DWR不是对一个设计的插入,也不强迫对象使用任何种类的继承结构。它和servlet框架内的应用配合的很好。

 

配置步骤:

1.拷贝dwr.jar到WEB-INF/ lib下   下载地址:http://getahead.ltd.uk/dwr/

2.在web.xml中增加dwr配置,WEB-INF目录中建立一个dwr.xml

 

  1. <servlet>
  2. <servlet-name>dwr-invoker</servlet-name>
  3. <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
  4. <!-- 设置为调试模式 -->
  5. <init-param>
  6. <param-name>debug</param-name>
  7. <param-value>true</param-value>
  8. </init-param>
  9. </servlet>
  10. <servlet-mapping>
  11. <servlet-name>dwr-invoker</servlet-name>
  12. <url-pattern>/dwr/*</url-pattern>
  13. </servlet-mapping>

3.建立一个被调用的类,和普通java类没有区别

  1. package dwr.test;
  2. public class Service {
  3. public String getMessage()
  4. {
  5. return "this is the dwr invoke test!";
  6. }
  7. }

4.在WEB-INF下增加dwr的配置文件dwr.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd">
  3. <dwr>
  4. <allow>
  5. <create javascript="service" creator="new">
  6. <param name="class" value="dwr.test.Service" />
  7. </create>
  8. </allow>
  9. </dwr>

5.书写调用

  1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
  2. <html>
  3. <head>
  4. <title>首页</title>
  5. <mce:script type="text/javascript" src="dwr/engine.js" mce_src="dwr/engine.js"></mce:script>
  6. <mce:script type="text/javascript" src="dwr/util.js" mce_src="dwr/util.js"></mce:script>
  7. <mce:script type="text/javascript" src="dwr/interface/service.js" mce_src="dwr/interface/service.js"></mce:script>
  8. <mce:script type="text/javascript"><!--
  9. // 调用服务端getMessage方法
  10. function firstDwr(){
  11. service.getMessage(callBackHello);
  12. }
  13. // 回调方法,显示从服务器返回的信息
  14. function callBackHello(data){
  15. alert(data);
  16. }
  17. // --></mce:script>
  18. </head>
  19. <body>
  20. <input type="button" name="button" value="测试" onclick="firstDwr()">
  21. </body>
  22. </html>

注意:

这两个js引入是dwr框架的

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

是在dwr.xml中我们配置的   <create javascript="service"

调用dwr与调用java方法类似,但调用后存在一个回调函数,结果由回调函数处理

 

6.结果:

this is the dwr invoke test!

转:http://blog.csdn.net/wklken/article/details/6382315

DWR基本配置的更多相关文章

  1. DWR+Spring配置使用

    一.DWR介绍 DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,利用这个框架可以让AJAX开发变得很简单.利用DWR可以在客户端 ...

  2. dwr.xml 配置

    dwr.xml 是你用来配置 DWR 的文件,默认是将其放入 WEB-INF 文件夹. 创建一个 dwr.xml 文件dwr.xml 有如下的结构: <?xml version="1. ...

  3. 【DWR系列04】- DWR配置详解

    table { margin-left: 30px; width: 90%; border: 1px; border-collapse: collapse } img { border: 1px so ...

  4. 配置使用dwr完成收邮件提示

    DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站.它可以允许在浏览器里的代码使用运行在 ...

  5. dwr和spring的整合

    1.dwr在spring配置文件的配置: <!-- 注意这里新增加的dwr tag, 为使其生效,文件头中要声明namespace --> <dwr:configuration /& ...

  6. SpringMVC中使用DWR

    SpringMVC中使用DWR重点在其配置当中. 1.  web.xml文件的配置 在DispatcherServlet中增加dwr的拦截来取代DwrServlet. 更改配置如下: <serv ...

  7. 基于注解的DWR使用

    dwr3.0支持使用注解,如果不喜欢配置dwr.xml文件,注解是个不错的方法,简单快捷. 步骤如下: 1.配置web.xml文件,需要在DwrServlet里加classes初始化参数: <i ...

  8. JSP的那些事儿(2)---- DWR2.0 的配置和使用

    JSP的那些事儿(2)----DWR2.0 的配置和使用 分类: Web开发 JAVA 2009-04-23 15:43 999人阅读 评论(0) 收藏 举报 jspdwrjavascriptserv ...

  9. JS调用Java函数--DWR框架

    (1)dwr与ssh框架整合教程dwr框架介绍. DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJA ...

随机推荐

  1. 【Mongodb】3.0 配置身份验证db.createUser()说明

    原文地址:http://bbs.51cto.com/thread-1146654-1.html 定义: 创建一个数据库新用户用db.createUser()方法,如果用户存在则返回一个用户重复错误. ...

  2. 黄聪:让WordPress主题支持语言本地化(使用poedit软件实现中文翻译功能)

    如果你的WordPress主题要提交到WordPress官方主题库,使用者来自世界各地的多种语言,那么,你就要让你的WordPress主题支持语言本地化,方便使用者进行语言翻译和制作语言包. 让Wor ...

  3. 队列(Queue)--环形队列、优先队列和双向队列

    1. 队列概述 队列和堆栈都是有序列表,属于抽象型数据类型(ADT),所有加入和删除的动作都发生在不同的两端,并符合First In, First Out(先进先出)的特性. 特性: ·FIFO ·拥 ...

  4. DBA_Oracle基本体系内存和进程结构(概念)

    2014-08-05 Created By BaoXinjian

  5. NeHe OpenGL教程 第四十二课:多重视口

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  6. Jquery each和map 的区别

    1,回调函数的参数顺序相反,each:i,elem,map:elem,i 2,返回值不同,map返回一个新的数组,each返回原始数组 回调的返回值,each只能返回 true 和 false,map ...

  7. MethodNotAllowedHttpException

    原因:1.没有加表单{{csrf_field()}}:2.除get提交以外,其它提交方式都要csrf_token();3.提交的路由非法,没有定义.

  8. Gerrit清单库配置(转载)

    From:http://fatalove.iteye.com/blog/1340334 gerrit清单库是用来配合repo使用的.清单库中列出了gerrit服务器上的其他版本库. 客户端通过repo ...

  9. gridView自动列宽代码

    gridView1.OptionsView.ColumnAutoWidth = false; for (int I = 0; I < gridView1.Columns.Count; I++) ...

  10. 拥抱高效、拥抱 Bugtags 之来自用户的声音(四)

    小编按:这是一篇 Bugtags 用户来稿,经过一段时间的密集使用,他已然觉得 Bugtags 是 App 开发者的好帮手,感谢解铃 App - 楚琪同学对 Bugtags 的信赖和支持.小编在这里诚 ...