使用OC4J 10.1.3.5和ADF关闭弹出窗体时出现java.lang.IllegalStateException

时间:2010-06-15 12:35:47

标签: java oc4j oracle-adf

我们正在使用OC4J 10.1.3.5和ADF。我有一个弹出窗体,关闭时我们得到错误。我想知道我错过了什么,我该如何解决?

Jun 15, 2010 8:26:49 AM com.sun.faces.lifecycle.ApplyRequestValuesPhase execute
SEVERE: java.lang.IllegalStateException: popView(): No view has been pushed.
javax.faces.el.EvaluationException: java.lang.IllegalStateException: popView(): No view has been pushed.
        at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:150)
        at oracle.adf.view.faces.component.UIXComponentBase.__broadcast(UIXComponentBase.java:1087)
        at oracle.adf.view.faces.component.UIXCommand.broadcast(UIXCommand.java:204)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:269)
        at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:327)
        at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:99)
        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
        at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:233)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:202)
        at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:12

1 个答案:

答案 0 :(得分:3)

来自文档:

  

IllegalStateException表示在非法或不适当的时间调用了某个方法。换句话说,Java环境或Java应用程序未处于所请求操作的适当状态。

解决这些例外并没有灵丹妙药;你必须根据具体情况处理它,研究你正在使用的任何库的API,并找出非法状态发生的位置。

在这种特殊情况下,当堆栈为空时,看起来正在调用popView()。您可能错过pushView,或错误计算推送次数与弹出次数。