dev@javaserverfaces.java.net

Error in JSF 1.2_04 p2 while rendering command link component with params

From: Belov Alexander <abelov_at_kazan.amfitel.ru>
Date: Mon, 9 Jul 2007 10:59:20 +0400

Good day.

 

I think I found a little bug in last version of JSF RI.

 

I use f:param inside commandLink. It's attribute "name" is required. I set
name, but don't set attribute value. This way I have an exception:

 

java.lang.NullPointerException

        at
com.sun.faces.renderkit.RenderKitUtils.getCommandLinkOnClickScript(RenderKit
Utils.java:934)

        at
com.sun.faces.renderkit.html_basic.CommandLinkRenderer.getOnClickScript(Comm
andLinkRenderer.java:295)

        at
com.sun.faces.renderkit.html_basic.CommandLinkRenderer.renderAsActive(Comman
dLinkRenderer.java:357)

        at
com.sun.faces.renderkit.html_basic.CommandLinkRenderer.encodeBegin(CommandLi
nkRenderer.java:165)

        at
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:788)

        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)

        at javax.faces.render.Renderer.encodeChildren(Renderer.java:137)

        at
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:81
2)

        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)

        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)

        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)

        at
com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:
245)

        at
com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:17
6)

 

 

If I set value, for example, "1", everything is good.

There is an error in the following code:

 

        for (Param param : params) {

            sb.append(',');

            sb.append(param.name.replace("'", "\\\'"));

            sb.append(',');

            sb.append(param.value.replace("'", "\\\'"));

        }

 

Attribute value is not necessary, but it is used here as necessary.