com.sun.faces.renderkit.RenderKitUtils.getCommandLinkOnClickScript中的java.lang.NullPointerException

时间:2011-05-02 16:01:58

标签: java jsf richfaces

我在会话范围内声明了一个托管bean。有一个下拉年份和一个提交按钮。当我尝试运行除2011年以外的所有年份的报告时页面工作正常。我收到以下错误。导致下面错误的原因是什么?

11:53:20,280 ERROR [STDERR] May 2, 2011 11:53:20 AM com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/reports/studentInfo.xhtml]
java.lang.NullPointerException
    at com.sun.faces.renderkit.RenderKitUtils.getCommandLinkOnClickScript(RenderKitUtils.java:934)
    at com.sun.faces.renderkit.html_basic.CommandLinkRenderer.getOnClickScript(CommandLinkRenderer.java:295)
    at com.sun.faces.renderkit.html_basic.CommandLinkRenderer.renderAsActive(CommandLinkRenderer.java:357)
    at com.sun.faces.renderkit.html_basic.CommandLinkRenderer.encodeBegin(CommandLinkRenderer.java:165)
    at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:788)
    at org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:280)
    at org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:262)
    at org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:284)
    at org.richfaces.renderkit.AbstractRowsRenderer.encodeCellChildren(AbstractRowsRenderer.java:285)...
...............

1 个答案:

答案 0 :(得分:1)

这是一个旧的JSF 1.2错误,当你输入<h:commandLink> <f:param> value属性为null或完全省略时<h:commandLink> <f:param name="foo" /> </h:commandLink> 时,就会出现这种错误。

E.g。

<h:commandLink>
    <f:param name="foo" value="#{null}" />
</h:commandLink>

{{1}}

除了修复它永远不会为null之外,您还可以升级到最新的Mojarra 1.2版本。它目前已经在1.2_15,这个错误已经在5年前发布的版本1.2_05左右修复了。让自己和您的软件保持最新。