问题描述:对于使用Struts2的时候进行一次http访问的时候可能后台处理比较耗时但是又要有良好的交互性则可以使用拦截器execAndWait
解决问题 -拦截器工作原理:execAndWait拦截器可以使后台处理一直在执行时转向一个等待页面,当后台处理完成后则转向成功页面.
struts.xml配置:
<package name="chacms" extends="json">
<action name="*_doImport" class="xxx">
<interceptor-ref name="execAndWait"></interceptor-ref >
<result name="wait">
template/app/Admin/doImportWait.ftl
</result>
<result name="success" type="freemarker">
template/app/{1}/goImport.ftl
</result>
</action>
</package>
说明:
在执行net.zfsy.app.action.{1}Action.doImport()方法需要很长时间才能运行完,
这时将会跳转到template/app/Admin/doImportWait.ftl页面,当执行完了doImport()方法后,则成功转向template/app/{1}/goImport.ftl页面