DWR是一个Java开源库,帮助你实现Ajax网站。你可以在在Javascript代码中调用Web服务器上的Java程序,像在Java代码就在浏览器中一样。
DWR主要包括两部分:
1.在服务器上运行的Servlet来处理请求并把结果返回浏览器。
2.运行在浏览器上的Javascript,可以发送请求,并动态改变页面。
DWR会根据你的Java类动态的生成Javascript代码。你感觉整个Ajax调用都是在浏览器上发生的,但事实上是服务器执行了这些代码,DWR负责数据的传递和转换。这种Java和Javascript之间的远程调用会让DWR用户感觉像是曾经习惯使用的RMI或SOAP的RPC机制。而且这一过程还不需要额外的浏览器插件。Java是同步的,而Ajax是异步的。所以当你调用一个远程方法时,你要给DWR一个回调函数,当数据从网络上回来时,DWR会调用这个函数。(http://wiki.javascud.org/display/dwrcn/Overview+of+DWR)
1. 下载安装DWR的Jar包
下载dwr.jar文件。把它放到你的webapp的WEB-INF/lib目录下。
2. 编辑配置文件
把下面的代码加到WEB-INF/web.xml文件中。<servlet>那部分需要和其他的<servlet>在一起,<servlet-mapping>部分也一样。
<servlet> <servlet-name>dwr-invoker</servlet-name> <display-name>DWR Servlet</display-name> <servlet-class>uk.ltd.getahead.dwr.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-INF目录下创建一个dwr.xml文件。
<?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="myDate">
<param name="class" value="java.util.Date"/>
</create>
</allow>
</dwr>
上面配置的意思是用java中Date的new方法创建一个对象,在js中的名字是myDate;这样在页面引入这myDate之后就可以像这样使用:myDate.getDate()获取当期日期;
3. 访问dwr
在浏览器中输入http:
Classes known to DWR:
点击“myDate”可以看到myDate的方法,也可以测试方法是否正确。在方法后面的括号中填入参数,点“execute”就会看到方法执行的结果。
到此dwr已经配置完成,可以在页面中使用了。
4.在web应用中使用
在页面中引入
<script src='/[YOUR-WEBAPP]/dwr/interface/[YOUR-SCRIPT].js'></script> <script src='/[YOUR-WEBAPP]/dwr/engine.js'></script>
就可以使用了。
分享到:
相关推荐
Direct Web Remoting (DWR) 是一个开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行交互,从而实现动态Web应用程序。DWR通过AJAX技术提供了一种简单的方法来创建富客户端界面,使得用户可以在不...
**DWR3.0应用详解** DWR (Direct Web Remoting) 是一种JavaScript库,它允许Web应用程序在客户端和服务器之间进行实时通信,无需刷新页面。DWR3.0是其一个重要版本,提供了对现代浏览器的支持,包括新版的Opera,但...
总的来说,"DWR应用简单Demo"是一个学习DWR的起点,通过这个例子,你可以了解到如何设置和使用DWR进行异步通信,以及如何在客户端和服务器端之间传递数据。对于想要提升Web应用交互性的开发者来说,掌握DWR是非常有...
1. **配置DWR**:在Web应用的`web.xml`中配置DWR的Servlet,并添加相应的DWR库依赖。 2. **创建Java接口**:在服务器端定义一个公开的Java接口,包含你需要在前端调用的方法。 3. **生成JavaScript接口**:DWR会...
DWR 是一个开源JavaScript库,允许Web应用程序在客户端和服务器之间进行实时通信,即实现Ajax(异步JavaScript和XML)功能。它简化了JavaScript与Java后端服务的交互,让开发者能够调用服务器上的方法,就像它们是...
Direct Web Remoting (DWR) 是一个开源Java库,它允许Web应用程序在浏览器和服务器之间进行实时通信,绕过传统的Ajax限制。DWR通过提供一套简单的API,使得开发者可以轻松地在JavaScript和Java之间调用方法,实现了...
在将DWR应用到项目中时,要确保采取适当的安全措施,以防止潜在的注入攻击和其他安全威胁。 为了最大限度地利用DWR,开发者需要熟悉JavaScript以及Java后端编程。只有这样,才能充分利用DWR提供的全部功能,编写出...
这个压缩包包含了DWR的三个主要版本:DWR1.0、DWR2.0和DWR3.0的jar包,这些jar包是运行DWR应用的核心组件。 DWR1.0: DWR1.0是DWR项目的早期版本,主要目标是简化Web应用中的异步通信。在这个版本中,DWR提供了一个...
dwr-2.0RC1.jar文件,替换从官方网站下载下来的dwr.jar包,并且不需要依赖其它的任何jar包(官方网站的dwr.jar包还依赖commons-logging-1.0.4.jar,即必须配置log4j) 博文链接:...
【标题】:“DWR应用” DWR(Direct Web Remoting)是一种开源JavaScript库,它允许在客户端的浏览器和服务器端的Java代码之间进行实时、安全的双向通信。DWR简化了Ajax开发,使得Web应用程序可以像桌面应用一样...
DWR(Direct Web Remoting)是一种Java库,它允许JavaScript在客户端与服务器端进行直接的交互,从而实现在Web应用程序中的Ajax功能。DWR的主要目标是简化前后端的数据交换,提高用户体验,使得Web应用能够像桌面...
DWR (Direct Web Remoting) 是一种开源Java技术,它允许Web应用程序在浏览器和服务器之间进行实时、双向通信,使得JavaScript可以直接调用服务器端的Java方法,极大地简化了客户端和服务器端的数据交换。本笔记将...
通过查看这个文件,你可以了解DWR项目通常是如何布局的,这对于理解和构建自己的DWR应用非常有帮助。 dwr.war:WAR(Web Application Archive)文件是Java Web应用的标准打包格式。这个dwr.war可能是预编译的DWR...
DWR(Direct Web Remoting)是一个开源JavaScript库,它允许Web应用程序在客户端和服务器之间进行实时的、异步的数据交换,极大地增强了用户界面的交互性。这个“Ajax之dwr框架应用”示例是一个很好的起点,帮助...
在这个"DWR应用示例源代码"中,我们可以深入理解DWR的工作原理及其实际应用。 DWR的核心概念包括三个主要部分:`dwrc.js`(客户端库)、`DWR Engine`(服务器端组件)和`Servlet`(DWR引擎的入口点)。以下是对这些...
`ajax登录`可能是一个实际的DWR应用示例,展示如何实现无刷新的登录功能。`dwrdemo`可能是一个完整的DWR演示项目,包含运行示例的源代码。`dwr需要用的jar`是DWR运行所需的库文件。`Ajax无刷新页的业务逻辑实现`可能...
- 可以将这些文件打包成一个文件夹,然后将其移动到Tomcat的`webapps`目录下,这样就能直接运行DWR应用。 6. **JavaScript调用Java方法**: - 在HTML页面中,引入DWR生成的JavaScript文件,例如`dwr.engine.js`和...
1. **引入DWR库**:在项目中添加DWR的JAR文件,以及在Web应用的web.xml中配置DWR Servlet。 2. **暴露Java方法**:通过注解或者配置文件,声明哪些Java方法可以被客户端调用。 3. **生成JavaScript接口**:DWR会自动...