【问题标题】:java.lang.NullPointerException at org.richfaces.renderkit.AjaxCommandRendererBase.isSubmittedorg.richfaces.renderkit.AjaxCommandRendererBase.isSubmitted 的 java.lang.NullPointerException
【发布时间】:2014-10-16 01:43:25
【问题描述】:

我有以下 JSF 2 + RichFaces 4 代码:

<h:form>
     <rich:panel>
         <h:commandLink id="exportLink" 
                 action="#{MyMBean.execute}"
                 value="Do"
                 style="padding-right: 5px"/>
     </rich:panel>
</h:form>

MyMBean.execute 返回void。当我提交表单时,抛出以下异常:

10:34:33,265 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/web-client].[Faces Servlet]] (http-/127.0.0.1:8443-11) JBWEB000236: Servlet.service() for servlet Faces Servlet threw exception: java.lang.NullPointerException
    at org.richfaces.renderkit.AjaxCommandRendererBase.isSubmitted(AjaxCommandRendererBase.java:83) [richfaces-components-ui-4.3.7.Final.jar:4.3.7.Final]
    at org.richfaces.renderkit.AjaxCommandRendererBase.doDecode(AjaxCommandRendererBase.java:59) [richfaces-components-ui-4.3.7.Final.jar:4.3.7.Final]
    at org.richfaces.renderkit.RendererBase.decode(RendererBase.java:80) [richfaces-components-ui-4.3.7.Final.jar:4.3.7.Final]
    at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:793) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1187) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIForm.processDecodes(UIForm.java:225) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1182) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:925) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78) [jsf-impl-2.1.19-redhat-2.jar:2.1.19-redhat-2]
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) [jsf-impl-2.1.19-redhat-2.jar:2.1.19-redhat-2]
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) [jsf-impl-2.1.19-redhat-2.jar:2.1.19-redhat-2]
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593) [jboss-jsf-api_2.1_spec-2.1.19.1.Final-redhat-1.jar:2.1.19.1.Final-redhat-1]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at com.as.jleo.web.NoCacheFilter.doFilter(NoCacheFilter.java:73) [jleo-web-client-web-mbean-2.00.00_beta.jar:]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at com.as.jleo.web.license.LicensesFilter.doFilter(LicensesFilter.java:77) [jleo-web-client-web-mbean-2.00.00_beta.jar:]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at com.as.jleo.session.SessionTimeoutFilter.doFilter(SessionTimeoutFilter.java:52) [jleo-web-client-web-mbean-2.00.00_beta.jar:]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at com.as.jleo.login.SecurityCheckFilter.doFilter(SecurityCheckFilter.java:81) [jleo-web-client-web-mbean-2.00.00_beta.jar:]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.event(JBossWebContext.java:91)
    at org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.invoke(JBossWebContext.java:72)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:499) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.3.0.Final-redhat-14.jar:7.3.0.Final-redhat-14]
    at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.3.0.Final-redhat-14.jar:7.3.0.Final-redhat-14]
    at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) [jboss-as-web-7.3.0.Final-redhat-14.jar:7.3.0.Final-redhat-14]
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920) [jbossweb-7.2.2.Final-redhat-1.jar:7.2.2.Final-redhat-1]
    at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
10:34:33,270 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/web-client].[Faces Servlet]] (http-/127.0.0.1:8443-11) JBWEB000236: Servlet.service() for servlet Faces Servlet threw exception: java.lang.NullPointerException

这是怎么引起的,我该如何解决?

【问题讨论】:

    标签: jsf-2 richfaces


    【解决方案1】:

    这是 RichFaces 中的一个错误,当您将 &lt;a4j:commandXxx&gt;&lt;h:commandXxx&gt; 混合在同一个 &lt;h:form&gt; 中时会出现此错误(因此,您问题中的代码根本不是真正的 MCVE...)。这已作为问题1301813647 报告给RichFaces。对于 RichFaces 4.x,它已在 RichFaces 4.3.8 中修复。

    因此,您只需将 RichFaces 升级到至少 4.3.8。

    【讨论】:

    • 在哪里可以下载 RichFaces-4.3.8? RichFaces 网站仅提供 4.3.7 版本。
    猜你喜欢
    • 1970-01-01
    • 2013-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多