日期:2014-05-16  浏览次数:20417 次

DWR使用engine.js

DWR框架会自动生成两个核心JavaScript函数库:1, engine.js文件,这个文件是DWR的核心库,只要需要使用DWR就不能缺少该文件; 2, util.js,这个文件是DWR的工具类库,使用它可以简化客户端DOM元素的操作,可以不引用。

?

设置调用顺序: 通过调用dwr.engine.setOrdered(boolean)方法,可以严格限制请求的响应顺序,响应顺序严格按照放送顺序返回。也就是在旧的请求安全返回以前,DWR是不会放送新的请求的。???????????? 但是有一点就是,将这个属性设置为true会导致应用的性能下降。

?

设置全局Hook函数:?? 通过dwr.engine设置的Hook函数是全局的,对所有的远程调用都有效;? 设置全局的调用前的Hook函数:dwr.engine.setPreHook(preFunction);????? 设置全局的调用后Hook函数:dwr.engine.setPostHook(postFunction);

?

?

还有一些其他的全局处理函数:

  1. 错误处理函数:setErrorHandler(function...)

  2. 警告处理函数:setWarningHandler(function...)

  3. 异常处理函数:setExceptionHandler(function...)

  4. 内容异常处理函数:setTextHtmlHandler(function...)

批处理:? 批处理可以一次完成多个远程调用,这样可以减少与服务器的交互次数,从而提高系统的响应速度。??????????????????????????? 批处理通过此方法开始:dwr.engine.beginBatch();通过dwr.engine.endBatch()结束。注意: 不要在批处理中执行同步调用,会出错的;? 一定要记得最后调用endBatch(),否则所有的远程调用永远的处于列队中,永远也不会得到放送的机会。。。。。。