我们正在使用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
答案 0 :(得分:3)
来自文档:
IllegalStateException
表示在非法或不适当的时间调用了某个方法。换句话说,Java环境或Java应用程序未处于所请求操作的适当状态。
解决这些例外并没有灵丹妙药;你必须根据具体情况处理它,研究你正在使用的任何库的API,并找出非法状态发生的位置。
在这种特殊情况下,当堆栈为空时,看起来正在调用popView()
。您可能错过pushView
,或错误计算推送次数与弹出次数。