我正在使用 execAndWait 拦截器,似乎在拦截器之后会话丢失了..
我的代码是 - struts-lcms.xml
...
<action name="testAction" class="com.lcms.presentation.TestAction">
<interceptor-ref name="execAndWait"></interceptor-ref>
<param name="delay">3000</param>
<param name="delaySleepInterval">50</param>
<result name="wait" type="tiles">tiles.ques</result>
<result name="success" type="tiles">tiles.ques</result>
<result name="diag" type="redirectAction">diagnosticAction</result>
</action>
...
如果我删除拦截器代码,那么它会将我带到问题页面(tiles.ques)..但是,使用拦截器,会话为空..
TestAction 文件中的执行方法中的此代码
SessionObject sess = (SessionObject)getSession().getAttribute(LcmsConstants.SESSION_OBJECT);
如果不使用拦截器,它会正确地提供会话。但是,如果使用拦截器代码,那么它会抛出 NULL 指针异常。
请告诉我如何克服这个问题..