【发布时间】:2011-04-05 07:19:18
【问题描述】:
我将 Primefaces 2.2 与 Spring 3.0.5 一起使用,到目前为止它运行良好,但今天我遇到了以下问题。我想包含 p:button 组件,但是当我这样做时,我得到以下异常:
java.lang.ClassCastException: org.primefaces.optimus.navigationhandler.ViewIdBasedNavigationHandler cannot be cast to javax.faces.application.ConfigurableNavigationHandler
at org.primefaces.component.button.ButtonRenderer.findNavigationCase(ButtonRenderer.java:114)
at org.primefaces.component.button.ButtonRenderer.buildOnclick(ButtonRenderer.java:90)
at org.primefaces.component.button.ButtonRenderer.encodeMarkup(ButtonRenderer.java:56)
at org.primefaces.component.button.ButtonRenderer.encodeEnd(ButtonRenderer.java:38)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:879)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1650)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1646)
at ...
ViewIdBasedNavigationHandler 在我的 faces-config.xml 中配置,并且所有其他 primefaces 组件到目前为止都在工作。据我所见, ViewIdBasedNavigationHandler 类是从 javax.faces.application.NavigationHandler 派生的,而不是从 javax.faces.application.ConfigurableNavigationHandler 派生的,因此 ClassCastException 是有道理的。但由于我找不到其他有同样问题的用户,我想我错过了一些东西。
有什么想法吗? 延斯
【问题讨论】:
标签: jsf-2 primefaces