论坛首页 Java企业应用论坛

如何再struts中提交之后的空白页面现实一个提示等待的功能

浏览 4422 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-11-06  

本人写了一个存储过程.再struts的action中调用dao中的方法执行存储过程.

现在执行该存储过程大概花费时间在10-20分钟左右.

所以想在struts提交处理该方法的同时让struts本身的空白页面显示一张图片或者什么其他的等待画面..当该方法执行完毕之后该等待页面又可以消失.

nzjz.jsp

java 代码
  1.     
  2.         确认结转总会计帐套<!---->年会计科目余额到<!---->年年初数中吗?

      
  3.         "nzjz.do?method=zkjnzjz" onclick="javascript:{return ask();}">   
  4.             "年终结转" src="/xzkj/image/nzjz.gif" border="0">   
  5.         

nzjzAction.java

java 代码
  1. public ActionForward zkjnzjz(ActionMapping actionMapping,   
  2.                                ActionForm actionForm,   
  3.                                HttpServletRequest httpServletRequest,   
  4.                                HttpServletResponse httpServletResponse) {   
  5.     nzjzBean nb = (nzjzBean) actionForm;   
  6.   
  7.     SessionInfo si = (SessionInfo) httpServletRequest.getSession().getAttribute(   
  8.         "sessionBean");   
  9.     String msg = "";   
  10.     String eid = "";   
  11.     ArrayList list = new ArrayList();   
  12.     boolean bol = false;   
  13.     double dou = 0.00;   
  14.     try {   
  15.       dou = nd.getFJZKM_YUE(si);   
  16.   
  17.       //if (dou != 0.00) {   
  18.      //   target="failed";   
  19.       //  msg = "非结转会计科目存在余额,请先内转!";   
  20.     //  }   
  21.     //  else {   
  22.   
  23.           bol = nd.nzjz_ZKJ(si);   
  24.           if (bol) {   
  25.             target="success";   
  26.             msg = "年终结转成功!";   
  27.           }   
  28.           else {   
  29.             target="failed";   
  30.             msg = "数据库连接错误!";   
  31.           }   
  32.   
  33.     //  }   
  34.   
  35.     }   
  36.     catch (FiscalException ex) {   
  37.     }   
  38.   
  39.     httpServletRequest.getSession().setAttribute("msg", msg);   
  40.     return actionMapping.findForward(target);   
  41.   }   

 

struts-config.xml

java 代码
  1. "nzjzBean" type="com.datanew.maintain.nzjz.bean.nzjzBean" />   
  2.   
  3.   
  4. "/report/commReport/sumItemout" scope="request" type="com.datanew.report.commReport.action.SumItemout">   
  5.       "success" path="/report/commReport/sumItemout.jsp" />   
  6.       

 

 

部分代码贴出来了.希望大家帮我想想办法啊..

想个 简单点的又能让用户满意接受同时对于以后维护起来还方便点的方法..谢谢诸位呀...

比如说当struts的action提交请求之后在处理业务逻辑的时候同时显示另外一个页面.而该页面显示一张动态的图片.如"请稍等....".当过程执行完成之后又会执行struts的forward中配置.跳转到成功或者失败页面..

不会实现...望大家.看在我贴代码贴得这么辛苦的份上也要帮滴啊..

或者直接邮箱或者msn联系..都是同一个地址[myc-olympic@163.com].

谢谢拉..

   发表时间:2007-11-06  
同步调用的话实现起来费劲,还是使用异步调用技术吧。去找下ajax的资料,学会异步调用就行了。
0 请登录后投票
   发表时间:2007-11-06  
没明白.ajax我也用过.比如判断用户输入一个用户名判断用户名是否重复就可以这样实现.但是我现在要做的是在struts提交时候能够显示一个用户等待的画面.而又不影响struts正常的forward跳转.
如果真用ajax实现..请明示..
谢谢呀.
0 请登录后投票
   发表时间:2007-11-06  
没仔细看您的代码

您想实现的功能,struts2可以实现,可以参考或转到struts上
0 请登录后投票
   发表时间:2007-11-06  
谢谢楼上的兄弟啊.

可是我的是struts1.1的耶..strust2没用过呀..
0 请登录后投票
   发表时间:2007-11-06  
可以看看struts2的原理,然后自己实现,应该不会太复杂的

我没有看过源码,没有发言权,你可以自己看看,不好意思

或者,使用ajax/iframe实现回调就好,不过这个需要你的Dhtm的基础了
0 请登录后投票
   发表时间:2007-11-06  
哦..那我看看用ajax的吧..实在不行了就开个进程,搞个进度条算了..不用action了..那样就是麻烦.维护起来也相当麻烦...苦恼呀.
0 请登录后投票
   发表时间:2007-11-06  
用ajax吧,用回掉实现,网上有好多上传等待的例子,应该和你需求是一样
0 请登录后投票
   发表时间:2007-11-06  
如何提交后要跳转,用ajax是不合适的,用js和div可以作一个假的
0 请登录后投票
   发表时间:2007-11-09  
我正在准备用ajax回掉。。。。进行中。。。
谢谢大家呀。
本人脚本技术不是很过关。所以用js和div的这种我看实现起来我有点困难。!
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics