You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Rashmi Kumari <Ra...@rmsi.com> on 2005/06/23 09:54:19 UTC
Unable to render Server side tree2
Hi,
I have build a client side tree using X:tree2 tag which is working fine but
when I change it to server side tree using clientSideToggle="false"
attribute, it is giving error.
The jsp is-------
<x:tree2 value="#{treeBacker.treeData}" id="server-tree" var="
node" varNodeToggler="t" clientSideToggle="false">
<f:facet name="person">
<h:panelGroup>
<f:facet name="expand">
<h:graphicImage value="images/yellow-folder-open.png"
rendered="#{t.nodeExpanded}" border="0"/>
</f:facet>
<f:facet name="collapse">
<h:graphicImage value="images/yellow-folder-closed.png"
rendered="#{!t.nodeExpanded}" border="0"/>
</f:facet>
<h:outputText value="#{node.description}" styleClass="
nodeFolder"/>
</h:panelGroup>
</f:facet>
<f:facet name="foo-folder">
<h:panelGroup>
<f:facet name="expand">
<h:graphicImage value="images/yellow-folder-open.png"
rendered="#{t.nodeExpanded}" border="0"/>
</f:facet>
<f:facet name="collapse">
<h:graphicImage value="images/yellow-folder-closed.png"
rendered="#{!t.nodeExpanded}" border="0"/>
</f:facet>
<h:commandLink immediate="true" action="#{
treeBacker.getParent}" actionListener="#{
treeBacker.selectionTreeActionListener}" styleClass="document">
<h:outputText value="#{node.description}" styleClass="
nodeFolder"/>
<f:param name="docNum" value="#{node.identifier}"/>
</h:commandLink>
<h:outputText value=" (#{node.childCount})" styleClass="
childCount" rendered="#{!empty node.children}"/>
</h:panelGroup>
</f:facet>
<f:facet name="folder">
<h:panelGroup>
<f:facet name="expand">
<h:graphicImage value="images/blue-folder-open.png"
rendered="#{t.nodeExpanded}" border="0"/>
</f:facet>
<f:facet name="collapse">
<h:graphicImage value="images/blue-folder-closed.png"
rendered="#{!t.nodeExpanded}"
border="0"/>
</f:facet>
<h:commandLink immediate="true" action="#{
treeBacker.getSelectedNode}" actionListener="#{
treeBacker.selectionTreeActionListener}" styleClass="document">
<h:outputText value="#{node.description}" styleClass="
nodeFolder"/>
<f:param name="docNum" value="#{node.identifier}"/>
</h:commandLink>
<h:outputText value=" (#{node.childCount})" styleClass="
childCount" rendered="#{!empty node.children}"/>
</h:panelGroup>
</f:facet>
<f:facet name="document">
<h:panelGroup>
<h:commandLink immediate="true" action="#{
treeBacker.getParent}" actionListener="#{
treeBacker.selectionTreeActionListener}"
styleClass="#{t.nodeSelected? '
documentSelected' : 'document'}">
<h:graphicImage value="images/document.png" border="0"/>
<h:outputText value="#{node.description}"/>
<f:param name="docNum" value="#{node.identifier}"/>
</h:commandLink>
</h:panelGroup>
</f:facet>
</x:tree2>
Complete stack trace of the exception is------
java.lang.IllegalStateException: parent is null?
at
javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:404)
at
javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:256)
at org.apache.jsp.template.template_jsp.
_jspx_meth_f_subview_2(org.apache.jsp.template.template_jsp:231)
at org.apache.jsp.template.template_jsp.
_jspx_meth_f_view_0(org.apache.jsp.template.template_jsp:120)
at org.apache.jsp.template.template_jsp.
_jspService(org.apache.jsp.template.template_jsp:70)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:673)
at
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:464)
at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:399)
at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:405)
at
org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl.dispatch(JspTilesViewHandlerImpl.java:220)
at
org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl.renderView(JspTilesViewHandlerImpl.java:206)
at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:300)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:112)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Re: Unable to render Server side tree2
Posted by Sean Schofield <se...@gmail.com>.
Try removing the expand and collapse facets. Those are really only
meant for the client side version. Take a look at the server side
tree in the simple examples for an idea of how to set it up. You
should be able to modify the client-side trees in the examples using
the server-side examples as your guide.
HTH,
sean
On 6/23/05, Rashmi Kumari <Ra...@rmsi.com> wrote:
>
> Hi,
>
> I have build a client side tree using X:tree2 tag which is working fine but
> when I change it to server side tree using clientSideToggle="false"
> attribute, it is giving error.
>
> The jsp is-------
> <x:tree2 value="#{treeBacker.treeData}" id="server-tree" var="
> node" varNodeToggler="t" clientSideToggle="false">
> <f:facet name="person">
> <h:panelGroup>
> <f:facet name="expand">
> <h:graphicImage value="images/yellow-folder-open.png"
> rendered="#{t.nodeExpanded}" border="0"/>
> </f:facet>
> <f:facet name="collapse">
> <h:graphicImage value="images/yellow-folder-closed.png"
> rendered="#{!t.nodeExpanded}" border="0"/>
> </f:facet>
> <h:outputText value="#{node.description}" styleClass="
> nodeFolder"/>
> </h:panelGroup>
> </f:facet>
> <f:facet name="foo-folder">
> <h:panelGroup>
> <f:facet name="expand">
> <h:graphicImage value="images/yellow-folder-open.png"
> rendered="#{t.nodeExpanded}" border="0"/>
> </f:facet>
> <f:facet name="collapse">
> <h:graphicImage value="images/yellow-folder-closed.png"
> rendered="#{!t.nodeExpanded}" border="0"/>
> </f:facet>
> <h:commandLink immediate="true" action="#{
> treeBacker.getParent}" actionListener="#{
> treeBacker.selectionTreeActionListener}" styleClass="document">
> <h:outputText value="#{node.description}" styleClass="
> nodeFolder"/>
> <f:param name="docNum" value="#{node.identifier}"/>
> </h:commandLink>
> <h:outputText value=" (#{node.childCount})" styleClass="
> childCount" rendered="#{!empty node.children}"/>
> </h:panelGroup>
> </f:facet>
> <f:facet name="folder">
> <h:panelGroup>
> <f:facet name="expand">
> <h:graphicImage value="images/blue-folder-open.png"
> rendered="#{t.nodeExpanded}" border="0"/>
> </f:facet>
> <f:facet name="collapse">
> <h:graphicImage value="images/blue-folder-closed.png"
> rendered="#{!t.nodeExpanded}"
> border="0"/>
> </f:facet>
> <h:commandLink immediate="true" action="#{
> treeBacker.getSelectedNode}" actionListener="#{
> treeBacker.selectionTreeActionListener}" styleClass="document">
> <h:outputText value="#{node.description}" styleClass="
> nodeFolder"/>
> <f:param name="docNum" value="#{node.identifier}"/>
> </h:commandLink>
> <h:outputText value=" (#{node.childCount})" styleClass="
> childCount" rendered="#{!empty node.children}"/>
> </h:panelGroup>
> </f:facet>
> <f:facet name="document">
> <h:panelGroup>
> <h:commandLink immediate="true" action="#{
> treeBacker.getParent}" actionListener="#{
> treeBacker.selectionTreeActionListener}"
> styleClass="#{t.nodeSelected? '
> documentSelected' : 'document'}">
> <h:graphicImage value="images/document.png" border="0"/>
> <h:outputText value="#{node.description}"/>
> <f:param name="docNum" value="#{node.identifier}"/>
> </h:commandLink>
> </h:panelGroup>
> </f:facet>
> </x:tree2>
>
> Complete stack trace of the exception is------
>
> java.lang.IllegalStateException: parent is null?
> at
> javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:404)
> at
> javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:256)
> at org.apache.jsp.template.template_jsp.
> _jspx_meth_f_subview_2(org.apache.jsp.template.template_jsp:231)
> at org.apache.jsp.template.template_jsp.
> _jspx_meth_f_view_0(org.apache.jsp.template.template_jsp:120)
> at org.apache.jsp.template.template_jsp.
> _jspService(org.apache.jsp.template.template_jsp:70)
> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:673)
> at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:464)
> at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:399)
> at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
> at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:405)
> at
> org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl.dispatch(JspTilesViewHandlerImpl.java:220)
> at
> org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl.renderView(JspTilesViewHandlerImpl.java:206)
> at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:300)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:110)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:112)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> at java.lang.Thread.run(Thread.java:595)
>
>
>