前台JSP页面有个超链,这个链接有3个状态(已执行,为执行,正在执行)默认未执行,
点击超链到后台Action执行任务(页面状态设为正在执行),
Action定时读取某路径下TXT文本,文本中只有一个数字,假设现在文本中的值是1,当读到文本值为2的时候,
更改数据库信息,把前台页面状态设置已执行。
我用的是SSH框架,定时读取TXT用的Timer,(因为TXT文本是个接口,不一定什么时候改变,所以当点击执行的时候才定时读取),因为定时器没有返回值,现在功能基本实现,就是不知道,当文本值为2了以后怎么跳到Action,或者说更改页面状态为已执行。还有就是Timer如果执行一次之后,第二次执行会报错,有什么好的解决方案么。

解决方案 »

  1.   

    楼主应该从页面中,用JS定时调用Action,并根据Action返回结果决定是否刷新页面。Action中不需要定时。
      

  2.   

    如楼上所说,楼主这个设计模式不好
    用Js定时访问Action,Action只需读取文本,返回状态就可以了
      

  3.   

      可以采用 前台用js+ajax定时调度(建议用jquery)
         
       ssh  框架 如果想在后台定时调度可以使用squart
      

  4.   

    你访问页面的时候,服务器返回解析后的html代码之后就断开连接了,如果页面不向服务器发请求的话根本不知道文本的值是多少。楼上的兄弟的方案可以的!