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. NOIP第7场模拟赛题解

    NOIP模拟赛第7场题解: 题解见:http://www.cqoi.net:2012/JudgeOnline/problemset.php?page=13 题号为2221-2224. 1.car 边界 ...

  2. Tomcat的startup.bat一闪而过问题的解决

    问题描述:点击Tomcat的startup.bat,一闪而过. 问题分析: 1.Tomcat的startup.bat--->catalina.bat--->setclasspath.bat ...

  3. UDP 单播、广播和多播

    阅读目录(Content) 一.UDP广播 二.UDP多播 1.多播(组播)的概念 2.广域网的多播 三.UDP广播与单播 广播与单播的比较 使用UDP协议进行信息的传输之前不需要建议连接.换句话说就 ...

  4. 通过共享用户ID来实现多个应用程序使用同一个进程(一些情况的测试)

    从很多方面来看,每个Android 应用程序都存在于它自己的世界之中:• 默认情况下,每个应用程序均运行于它自己的Linux 进程中.当应用程序中的任意代码开始执行时,Android 启动一个进程,而 ...

  5. 一. JVM发展史,运行时数据区域,四大引用

    一.JVM的出现 JVM将字节码解释成不同os下的机器指令,有了jvm,java语言在不同平台上运行时不需要重新编译 虚拟机发展史 (1)Sun Classic classic jvm要么采用纯解释器 ...

  6. java 对象传递 是 值传递 还是 引用传递?

    这个问题说实话我感觉没有太大的意义. 按第一印象和c++的一些思想去理解的话对象传递是引用传递,因为传递过去的对象的值能被改变. 但是又有很多人,不知道从哪里扣出来一句,java中只有值传递,没有引用 ...

  7. (C#) Action, Func, Predicate 等泛型委托

    (转载网络文章) (1). delegate delegate我们常用到的一种声明   Delegate至少0个参数,至多32个参数,可以无返回值,也可以指定返回值类型.   例:public del ...

  8. MySql语句大全:创建、授权、查询、修改等

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 一.用户创建.权限.删除 1.连接MySQL操作 连接:mysql -h 主机地址 -u 用户 ...

  9. WindowsForm应用程序调用WebService

    本文原创,如需转载,请标明源地址,谢谢合作!http://blog.csdn.net/sue_1989/article/details/6597078 本文的编写IDE为VSTS2008和.NET F ...

  10. Top 6 Programming Languages for Mobile App Development

    Mobile application development industry in the last five years have multiplied in leaps and bounds, ...