webtier@glassfish.java.net

Re: [webtier] Re: JSF 2.0 composite components with method-valued attributes

From: <webtier_at_javadesktop.org>
Date: Thu, 19 Feb 2009 02:03:44 PST

I managed to reproduce this with nav button + wrapper
(I removed html tags as they seem to ruin the post):

    <ui:define name="content">
                <!-- begin composite component usage -->
h1 Page 1 /h1
<ez:wrapper>
<!-- <ez:nav act="#{navigation.goNav2}"/> -->
</ez:wrapper>
                <!-- end composite component usage -->
    </ui:define>
Even with ez:nav commented out!
but wrapper now contains h:outputLink:


    <composite:interface name="wrapper">
    </composite:interface>
    <composite:implementation>
above
        <h:outputLink>a link </h:outputLink>
            <composite:renderUsingPageChildren/>
below
    </composite:implementation>


here's the stacktrace:


(I'll post the component tree in the next post)
java.io.IOException: Unable to find composite component parent for component j_id19
        at com.sun.faces.renderkit.html_basic.UsingPageChildrenRenderer.encodeChildren(UsingPageChildrenRenderer.java:75)
        at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849)
        at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:234)
        at com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:106)
        at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1502)
        at com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:66)
        at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1502)
        at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
        at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1502)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1505)
        at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:225)
        at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:156)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:97)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:102)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:311)
        at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:315)
        at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
        at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
        at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)
        at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:647)
        at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)
        at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)
        at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
        at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
        at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
        at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
        at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
[Message sent by forum member 'nzinoviev' (nzinoviev)]

http://forums.java.net/jive/thread.jspa?messageID=332852