ExecuteAndWaitInterceptor - Weblogic服务器上的问题

时间:2013-07-18 23:52:28

标签: java struts2 nullpointerexception weblogic-10.x

我终于可以在我的struts2应用程序中使用execandwait拦截器来处理文件上传操作。 用户选择文件并单击“提交”后,将显示“等待”页面,然后根据上载结果显示成功或错误页面。 在我们的开发环境(Tomcat服务器)上完成所有这些工作后感觉很有成就。

但是,我现在遇到的问题是尝试使用相同的代码来处理Weblogic 10.3。 在Weblogic上:选择文件并单击“提交”后,将显示“等待”页面,在第一次刷新后,我将获得nullPointerException(详情如下)

class java.lang.NullPointerException

Error Message:

Stack Trace:

com.actions.myAction.upload(myAction.java:80)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:453)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:292)
org.apache.struts2.interceptor.BackgroundProcess$1.run(BackgroundProcess.java:57)
java.lang.Thread.run(Thread.java:619)

在调试时,我看到每次刷新等待页面时,控件实际进入myAction类,这不是execAndWait拦截器应该如何工作(??)

任何人都可以帮我这个吗? execAndWaitInterceptor在Tomcat和Weblogic上的工作方式有何不同?

注意:如果没有execAndWait拦截器,文件上传实用程序也可以在Weblogic上正常工作。

struts.xml中

<action name=myAction" class="myActionClass" method="myMethod">
    <interceptor-ref name="completeStack" />
    <interceptor-ref name="execAndWait">
        <param name="delay">1000</param>
        <param name="delaySleepInterval">500</param>
    </interceptor-ref>
    <result name="wait">/WEB-INF/pages/wait.jsp</result>
    <result name="success">/WEB-INF/pages/success.jsp</result>
    <result name="input">/WEB-INF/pages/inputPage.jsp</result>    
</action>

wait.jsp

<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
    <head>
       <meta http-equiv="refresh" content="5;url=<s:url includeParams="all" />"/>
    </head>
    <body>
        <h1>Struts 2 execAndWait example</h1>
        <h3>Please wait ...</h3>
    </body>
</html>

TIA

0 个答案:

没有答案