`
Imagination_Fly
  • 浏览: 23166 次
  • 性别: Icon_minigender_1
  • 来自: 山城
社区版块
存档分类
最新评论
阅读更多

概念以及配置介绍 

DWR是一个开源的java包,可以使浏览器中的代码使用web服务器中java类的方法,就像这个方法就是在浏览器中一样。

      DWR包括两个部分:一个运行在服务器端的Java Servlet,负责处理浏览器的请求并发送反馈给浏览器;另一个是运行在浏览器端的Java Script,负责发生请求并动态修改web页面。
步骤:
(1)、下载dwr.jar,放在web-inf/lib目录下
(2)、修改web.xml,增加:
<servlet></servlet>
xml 代码
  1. <servlet>      
  2.   <servlet-name>dwr-invokerservlet-name>      
  3.   <display-name>DWR Servletdisplay-name>      
  4.   <servlet-class>uk.ltd.getahead.dwr.DWRServletservlet-class> //如果是DWR 2.x,改成org.directwebremoting.servlet.DwrServlet       
  5.   <init-param>      
  6.      <param-name>debugparam-name>      
  7.      <param-value>trueparam-value>      
  8.   init-param>      
  9. servlet>      
  10.       
  11. <servlet-mapping>      
  12.   <servlet-name>dwr-invokerservlet-name>      
  13.   <url-pattern>/dwr/*url-pattern>      
  14. servlet-mapping>      

<servlet-mapping></servlet-mapping>  
(3)、创建dwr.xml放在与web.xml一个目录下面
<!---->

<allow></allow>(4)、
一般jsp页面中需要加入: 
<script type="text/javascript" src="dwr/interface/Hello.js"></script>其中最后一个js文件是自定义的文件

(5)、写服务端的JAVA类
(6)、写客户端的js
function hello() { var user = $('user').value;
    Hello.hello(user, callback);
}
 
function callback(msg) {
   DWRUtil.setValue('result', msg);
}

web.xml中dwr定义小技巧

1.web.xml中dwr定义的一点小技巧
加下面的参数,可以让dwr以debug模式产生测试页面
<init-param></init-param>   
<param-name></param-name> debugparam-name>  
<param-value></param-value> trueparam-value>  
<init-param></init-param>
  
2.dwr.xml介绍
格式:
<dwr></dwr>     
<init></init>   
  
  
< init>   
<allow></allow>  
  
  
< allow>  
<signatures></signatures>   
  ...    
<signatures></signatures>    
<dwr></dwr>  

(1)、create元素介绍,一般结构如下,对每个要在远程访问方法的java类都要定义一个creator

  
  
  
   
  
<create></create>   对各个元素进行描述
(2)、 creator属性
new:指用java的new操作符创建对象
none:并不产生对象
scripted:用脚本语言创建对象,如BeanShell 或 Groovy via BSF
spring:通过spring framework创建对象
struts:使用struts的FormBean
pageflow:使用Beehive or Weblogic的PageFlow
(3)、javascript属性
         在浏览器端代理远程java对象的javascript对象的名字
(4)、scope属性
         远程java对象scope可以设置page、request、session、application。
(5)、param子元素:定义访问的具体java类。

(6)、include和exclude子元素:限制访问的方法

util.js工具包的使用

目录列表:
1、$()
2、DWRUtil.getText(id)
3、DWRUtil.getValue(id)
4、DWRUtil.setValue(id,value)
5、DWRUtil.getValues()
6、DWRUtil.setValues()
7、DWRUtil.addOptions and DWRUtil.removeAlloptions
8、DWRUtil.addRows and DWRUtil.removeAllRows
9、DWRUtil.onReturn
10、DWRUtil.toDescriptiveString
11、DWRUtil.useLoadingMessage

(1)、DWRUtil.selectRange("selectRangeBasic", 5, 15) 选中selectRangeBasic文本框里面从第五个字符到第15个字符之间的字符.
(2)、var arrayFive = [ 'One', 'Two', 'Three', 'Four', 'Five' ];
DWRUtil.addOptions('addOptionsBasic', arrayFive); 将数组添加到下拉菜单里面去;
(3)、DWRUtil.getValue('addOptionsBasic') 得到 addOptionsBasic 对象的值;
(4)、DWRUtil.getText('addOptionsBasic') 得到下拉框 addOptionsBasic 显示的文本;
(5)、var arrayObject = [
{ name:'One', value:'1' },
{ name:'Two', value:'2' },
{ name:'Three', value:'3' },
{ name:'Four', value:'4' },
{ name:'Five', value:'5' }
];DWRUtil.addOptions('addOptionsObject1', arrayObject, "name"); 将数组添加到下拉菜单里面去;后面的参数是确定那个是给用户显示的文本,同时也是值;如果是name表示名称和值都用name显示。
DWRUtil.addOptions('addOptionsObject1', arrayObject, "name","value"); 同上,不过后面参数是: 3=值;4=文本;
(6)、var map = { one:1, two:2, three:3, four:4, five:5 };
DWRUtil.addOptions('addOptionsMap1', map); 同上, one 是值;1 是文本;
DWRUtil.addOptions('addOptionsMap1', map,true); 同上, 1 是值;one 是文本;
(7)、DWRUtil.cloneNode('cloneNode1', { idPrefix:'pre', idSuffix:'suf' });克隆一个节点,参数一为要克隆的节点的id,第二个参数是在克隆的节点id前面加pre,后面加suf.(注意:如果该节点有子节点的话,子节点的名字也一样加
(8)、DWRUtil.onReturn(event, submitFunction);一般在form表单里面,防止在文本框上按回车就提交表单.
例如:
onkeypress="DWRUtil.onReturn(event, submitFunction)"/>

submitFunction表示要调用的js函数

xml 代码
  1. <!--CTYPE dwr PUBLIC   </sp-->    
  2.     "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"       
  3.     "http://www.getahead.ltd.uk/dwr/dwr10.dtd">      
  4.       
  5. <dwr>      
  6.   <allow>      
  7.     <create creator="new" javascript="JDate"> //JS使用的类名     
  8.       <param name="class" value="java.util.Date"/>  //实际java的类    
  9.     <create>      
  10.     <create creator="new" javascript="Demo" scope="page/request/session/application"> //可以设置对象保存的位置    
  11.       <param name="class" value="your.java.Bean"/>      
  12.     </create>      
  13.   </allow>      
  14. </dwr>      

 

js 代码
  1. <script src="<a href="http://envysiongdc.boldtech.com/dwr/engine.js">/dwr/engine.js</a>" type="text/javascript"></script>  <script src="<a href="http://envysiongdc.boldtech.com/dwr/interface/DwrService.js">/dwr/interface/DwrService.js</a>" type="text/javascript"></script>  <script src="<a href="http://envysiongdc.boldtech.com/dwr/util.js">/dwr/util.js</a>" type="text/javascript"></script>       

<script type="text/javascript" src="dwr/engine.js"></script><script type="text/javascript" src="hello.js"></script>

分享到:
评论

相关推荐

    DWR 教程 中文API DWR.xml配置文件说明 DWR学习笔记

    首先,"DWR学习笔记"提供了对DWR基础概念、核心功能以及实际应用的概述。这些笔记可能包含了DWR的基本架构,如它如何通过AJAX技术实现实时的Web交互,以及如何创建和调用服务器端的Java方法。 "DWR中文API"是DWR库...

    DWR学习笔记及经验总结

    在“DWR学习笔记及经验总结”中,我们可以期待找到以下关键知识点: 1. **DWR的基本概念**:了解DWR的核心理念,包括远程方法调用(Remote Method Invocation)、反向Ajax以及它如何通过JSON或XML格式传递数据。 2...

    DWR学习笔记和与spring整合练习

    **DWR(Direct Web Remoting)**是一种JavaScript库,它允许Web...通过深入学习和实践"DWR学习笔记和与spring整合练习",开发者可以掌握DWR的精髓,熟练运用其与Spring的整合,打造出高效、安全、易维护的Web应用程序。

    dwr学习笔记pdf文件

    ### dwr学习笔记pdf文件知识点概述 #### 一、DWR框架简介 - **DWR**(Direct Web Remoting)是由GetAhead公司开发的一款用于实现Ajax应用的框架。该框架的核心价值在于允许客户端JavaScript直接调用服务器端Java类...

    dwr学习笔记和总结

    ### dwr学习笔记和总结 #### 一、DWR简介 DWR (Direct Web Remoting) 是一个简化Ajax开发的框架,它使得JavaScript能够直接调用服务器端的Java方法成为可能,无需编写复杂的Ajax代码。这极大地提高了开发效率,并...

    DWR学习笔记-HelloWorld篇

    【标题】:“DWR学习笔记-HelloWorld篇” 在IT领域,DWR(Direct Web Remoting)是一个开源的Java框架,它允许JavaScript在浏览器端直接调用服务器端的Java方法,实现了网页与服务器的实时交互,类似于Ajax技术,但...

    dwr学习笔记(一个简单猜数字游戏)

    总结来说,这个"DWR学习笔记"示例涵盖了以下知识点: 1. DWR的基本概念和工作原理,包括Reverse Ajax机制。 2. 如何在服务器端配置DWR,定义可调用的Java服务。 3. 客户端如何使用DWR的JavaScript库与服务器进行通信...

    dwr学习笔记

    《DWR学习笔记详解》 DWR(Direct Web Remoting)是一种开源JavaScript库,它允许在Web浏览器和Java服务器之间进行实时、双向通信,极大地增强了Web应用的交互性。DWR使得开发者能够像操作本地对象一样操作服务器端...

    ajax dwr学习笔记和jar文件

    1. **官方文档**:DWR的官方文档详细介绍了如何配置、使用以及扩展DWR,是学习的好资料。 2. **示例代码**:实践是最好的老师,通过分析和运行提供的jar文件中的示例代码,能更深入理解DWR的工作原理。 3. **社区...

    DWR学习笔记(下载)

    **DWR(Direct Web Remoting)学习笔记** DWR是一种Java技术,用于在浏览器和服务器之间实现双向通信,使得Web应用程序能够实时更新和交互。它允许JavaScript直接调用服务器端的Java方法,就像它们是本地函数一样,...

    DWR学习笔记(如何配置DWR和工程实例)

    DWR(Direct Web Remoting)是一种Java库,用于在Web应用程序中实现JavaScript和服务器端Java对象之间的双向通信。它使得动态、实时的Web界面成为可能,而无需刷新整个页面。以下是对DWR配置和工程实例的详细解释: ...

    DWR 学习笔记

    **DWR(Direct Web Remoting)学习笔记** DWR 是一个开源 Java 框架,它允许在浏览器和服务器之间进行实时、双向通信,从而实现类似桌面应用的用户体验。DWR 的核心特性在于它简化了 AJAX(Asynchronous JavaScript...

Global site tag (gtag.js) - Google Analytics