我程序中用了session会话,会话有超时设置,但是程序端用了ajax部分,我发现session失效,ajax部分仍然能执行超过,除非服务器停止运行,我又不清楚怎么去处理dwr超时的设置,请问哪位高手能教教我,最好是能在dwr.xml里面写配置文件

解决方案 »

  1.   

    DWR/Ajax超时设置及其问题
    DWR可以指定超时设置:1、设置局部超时:RemoteBean.remoteMethod(param1, param2, ...,{callback: callbackfun, //回调函数timeout: Tms, //超时,单位是毫秒,默认为20分钟,设置为0代表关闭超时errorHandler:function(message) { alert(message); } //超时后调用的处理函数});2、设置全局超时:       DWREngine.setTimeout(Tms);3、存在的问题:       在某些情况下,Ajax/DWR超时造成回调无法调用(及时关闭超时设置也不行),我的一个比较笨的解决办法就是前台同时启动两个DWR远程调用,一个线程启动后台的耗时操作,这个操作结束后会向一个能够快速返回的地方,比如文件,数据库写入标识位(例如耗时操作的结果成功,失败等),而另一个线程获取后台文件或者数据库中的标识位(这个操作返回比较快),前台的第一个DWR调用不需要回调,只有第二个回调根据读取的标识位更新前台页面。以上问题在DWR环境和原始的Ajax调用中都存在。楼主参考一下
     
      

  2.   

    忘记了说,我用的是dwr的jar包,他自己会生成一个ajax的js文件,所以我无法去js里面设置超时,我的意思是dwr.xml里面能直接配置这些操作设置麽