百事通信息网
配置调试:
DWR的配置说明,网上已经是N多了,所以具体的配置这里不再讲了,不过有一点还得说明一下,关于DWR1.1.3升级到DWR2.0时配置中有二个地方得修改:
1、DWRServlet的包名有所改变,应该将uk.ltd.getahead.dwr.DWRServlet改成org.directwebremoting.servlet.DwrServlet
2、增加一个初始化参数(不加时报这个异常java.lang.IllegalArgumentException: DefaultContainer can't find a classes,原因DWR2.0 加入了JDK5的注释(annotations).DwrServlet初始化的时候会去检查注释的类)
<init-param >
<param-name>classes </param-name>
<param-value>java.lang.Object</param-value>
</init-param>
<load-on-startup>100</load-on-startup>
另外提醒一下,在开发过程中要将debug设成true会受益不小,接下来的内容中会讲到。
当所有的配置完成之后,我们在浏览器地址栏上输http://localhost:8080/<context>/dwr/就可以进入调式页面,上面有写到怎样在页面应用中布置,还可以看到你在DWR.xml文件中定义的对象,并允许你运行服务器上对象的方法进行测试。
页面应用:
将DWR应用到页面的时候,初学者经常会遇到这样的问题,明明将DWRUtil.js导进来了,使用时浏览器报对象错误,原因是引用的路径错了,举DWRUtil.js的例子,正确的路径是在<context>/dwr/DWRUtil.js,你可以在调试页面中找到正确路径,我在使用的过程中,会在页面<head>标签
内加入下列内容
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<base href="<%=basePath%>">
这样引用的时候就跟书上写的一样从dwr/DWRUtile.js就可以了。使用自已定义的一些方法最后是在页面被加载完成之后,原因也很简单,当调用方法返回数据操作DOM时,有可能Element还没有被加载到页面,这时就会报错。主要就是初始化数据的时候会遇到这类问题,解用方法也很简单,跟onload事件帮定就可以了,如
function init(){
var userId="402881a10eace4c0010eace4cc4a0001";
var typeId="402881a10ebc9a16010ebc9a1cc50001";
DWRUtil.useLoadingImage("images/progressbar_green.gif");
DWRUser.getUserById(userId,doUser);
}
if(window.attachEvent()){//页面加载完成后初始化
window.attachEvent("onload",init);
}else if(window.addEventLister){
window.addEventLister("load",init,false);
}else{
window.onload=init;
}
如果有多个远程访问的方法被调用时可以采用批量调用,以此来减少对服务器的访问次数节省往返服务器的时间,具体的应用举列
DWREngine.beginBatch();//批量调用减少对服务器的访问次数
DWRUtil.useLoadingImage("images/progressbar_green.gif");
DWRUser.getUserById(userId,doUser);
DWRArticleType.getTypeByUserId(userId,doArticleTypeList);
DWRArticleComment.getLastCommentByUserId(userId,doArticleLastComment);
DWRArticle.getArticleList(userId,typeId,"1",doArticleList);
DWREngine.endBatch();
有点事先出去一下,晚上回来接着写吧
分享到:
相关推荐
内容包括: DWR教程.txt DWR实例教程.txt DWR学习.txt DWR应用总结.txt DWR购物车实例 DWR与界面开发 一个简单的例子 DWR 入门与应用-林信良(良葛格).doc
以下是对DWR简单设计的总结: 1. **DWR的基本概念**: DWR的核心功能是在客户端JavaScript和服务器端Java之间建立直接的通信通道,通过AJAX(Asynchronous JavaScript and XML)技术实现异步数据交换。这允许用户...
DWR (Direct Web Remoting...总结,DWR提供了一种强大而灵活的方式,使得JavaScript可以直接调用服务器端的Java方法,实现复杂的数据交互。通过理解上述调用和传参方式,开发者能够更好地利用DWR构建富客户端应用程序。
DWR (Direct Web Remoting) 是一种开源JavaScript库,它允许Web应用程序在客户端与服务器之间进行实时、异步通信,无需刷新整个页面。Ajax(Asynchronous JavaScript and XML)技术是DWR实现其功能的基础,通过Ajax...
总结来说,DWR是一种强大的工具,能够帮助开发者构建出更加高效、响应式的Web应用。通过学习和掌握DWR,你可以更好地融合前后端开发,实现更为流畅的用户交互。在自学过程中,理解DWR的工作原理、熟练运用其主要组件...
`ajax登录`可能是一个实际的DWR应用示例,展示如何实现无刷新的登录功能。`dwrdemo`可能是一个完整的DWR演示项目,包含运行示例的源代码。`dwr需要用的jar`是DWR运行所需的库文件。`Ajax无刷新页的业务逻辑实现`可能...
### DWR学习总结 #### 一、DWR简介与版本变迁 DWR(Direct Web Remoting)是一个开源项目,它简化了服务器端Java对象与客户端JavaScript脚本之间的交互过程。通过DWR,开发者可以直接调用服务器端的方法就像调用...
**服务器端Ajax框架——DWR实践总结** ...总结来说,DWR是一个强大的服务器端Ajax框架,它简化了Java与JavaScript之间的通信,提高了Web应用的交互性。通过实践和研究DWR,开发者能够构建出更加流畅、高效的Web应用。
DWR是一个开源框架,它使得Web应用程序可以利用Ajax技术实现异步通信,即在不刷新整个页面的情况下更新部分网页内容。 在DWR中处理集合主要有以下几种情况: 1. **处理List**: 当Java方法的参数是一个`List`时,...
### 基于Ajax技术的DWR框架的研究与应用 #### 概述 随着Web技术的不断发展,用户对于Web应用的交互性和响应速度有了更高的要求。传统的Web开发方式已难以满足这种需求,因此Ajax(Asynchronous JavaScript and XML...
总结起来,DWR框架通过简化配置和提供强大的功能,使得开发者能够快速构建具有丰富交互性的Web应用。理解和配置DWR,不仅可以提升开发效率,还能为用户带来更加流畅的使用体验。通过学习和实践DWR,你将能够更好地...
总结起来,DWR是一个强大的工具,通过提供JavaScript与Java之间的无缝交互,极大地简化了Ajax应用的开发。无论是DWR 2.0还是3.0,它们都为Java开发者提供了高效、灵活的解决方案,帮助构建更加动态、响应式的Web界面...
总结一下,DWR框架通过提供一种简单的方式让JavaScript直接调用服务器端的Java方法,大大简化了AJAX应用的开发。在Tomcat上部署DWR,可以让开发者利用其强大的功能来构建更动态、交互性更强的Web应用。对于初学者来...
总结起来,DWR是一个强大的工具,它简化了Ajax开发,提供了丰富的功能和良好的安全性,使得开发者能够更加专注于业务逻辑的实现,而不是技术细节。如果你正在寻找一种方式来增强你的Web应用的交互性和响应速度,DWR...
return "一个DWR应用"; } } ``` 接下来,我们需要在`dwr.xml`文件中为这个类创建一个接口定义: ```xml <!-- 定义创建方式 --> <!-- javascript: 生成客户端JavaScript代理的方式 --> ...
5. **本节总结**:概括上述JavaScript高级特性的应用技巧,以及它们如何帮助开发者更高效地使用DWR。 通过以上内容,我们可以看到DWR不仅是一个强大的框架,还提供了一系列实用的工具和资源来帮助开发者构建高性能...
**总结**: DWR提供了一种简单的方式实现前后端交互,通过Ajax实现页面局部更新,提高了用户体验。但需要注意的是,由于直接暴露了后端方法,安全性是一个不容忽视的问题。同时,DWR的配置和使用需要对Java反射和XML...
总结来说,DWR作为Ajax开发的利器,通过其简单易用的API和丰富的功能,可以帮助开发者快速构建动态、交互性强的Web应用。结合参考书和实际案例,深入学习DWR,不仅可以提升技能,也能更好地理解和应用Ajax技术。