rich:columnGroup within rich:dataTable returns NULL exception
raovenu Dec 10, 2014 4:42 PMHi,
I am in the process of upgrading to RichFaces 4.2.2.Final and MyFaces 2.0.0. I am having issue after issue and thanks for all the help I have been getting so far. Now I am stuck with an error where I have a dataTable that has rich:columnGroup. if I take out the rich:columnGroup and change the table to h:dataTable it is compiling and running. Following is the code for the data table.
<rich:dataTable id="resultsDataTable" width="100%" var="resultSet" value="#{addressBlockSearchBean.queryResults}" styleClass="list" rendered="#{addressBlockSearchBean.displayResultSet}" >
<rich:column>
<f:facet name="header">
<h:outputText value="Mask" />
</f:facet>
<h:outputText value="#{resultSet.mask}" />
</rich:column>
<rich:column rendered="#{addressBlockSearchBean.flagOPEndAddress}">
<f:facet name="header">
<h:outputText value="End Address" />
</f:facet>
<h:outputText value="#{resultSet.endAddress}" />
</rich:column>
.
./There are more columns but I am just not showing here to reduce the size.
.
<f:facet name="footer">
<rich:columnGroup>
<h:column>
<h:outputText value="Total"/>
</h:column>
<h:column >
<h:outputText value=" "/>
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPEndAddress}">
<h:outputText value=" "/>
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPNamespace}">
<h:outputText value=" "/>
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPSize}">
<h:outputText value="#{addressBlockSearchBean.totSize}" />
</h:column>
<h:column>
<h:outputText value="#{addressBlockSearchBean.totalUsed}" />
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPUsedStatic}">
<h:outputText value="#{addressBlockSearchBean.totalStaticUsed}" />
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPUsedDhcp}">
<h:outputText value="#{addressBlockSearchBean.totalDhcpUsed}" />
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPReserved}">
<h:outputText value="#{addressBlockSearchBean.totalReserved}" />
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPAvailable}">
<h:outputText value="#{addressBlockSearchBean.totalAvailable}" />
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPEfficiency}">
<h:outputText value="#{addressBlockSearchBean.totEfficiency}" />
</h:column>
<h:column>
<h:outputText value=" "/>
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPStatus}">
<h:outputText value=" "/>
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPDescription}">
<h:outputText value=" "/>
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPPolicy}">
<h:outputText value=" "/>
</h:column>
<h:column rendered="#{addressBlockSearchBean.flagOPVlan}">
<h:outputText value=" "/>
</h:column>
</rich:columnGroup>
</f:facet>
</rich:dataTable> |
|
I am getting following stack trace at run time.
Dec 10, 2014 1:14:36 PM org.richfaces.context.ExtendedPartialViewContextImpl$RenderVisitCallback logException
SEVERE: UIColumnGroup should be a child of UIDataTable or UISubTable
javax.faces.event.AbortProcessingException: UIColumnGroup should be a child of UIDataTable or UISubTable
at org.richfaces.renderkit.ColumnGroupRenderer.createRowHolder(ColumnGroupRenderer.java:68)
at org.richfaces.renderkit.AbstractRowsRenderer.processRows(AbstractRowsRenderer.java:102)
at org.richfaces.renderkit.AbstractRowsRenderer.doEncodeChildren(AbstractRowsRenderer.java:120)
at org.richfaces.renderkit.RendererBase.encodeChildren(RendererBase.java:157)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:464)
at org.apache.myfaces.shared_impl.renderkit.RendererUtils.renderChild(RendererUtils.java:521)
at org.apache.myfaces.shared_impl.renderkit.html.HtmlTableRendererBase.renderTableHeaderOrFooterRow(HtmlTableRendererBase.java:891)
at org.apache.myfaces.shared_impl.renderkit.html.HtmlTableRendererBase.renderTableFooterRow(HtmlTableRendererBase.java:831)
at org.apache.myfaces.shared_impl.renderkit.html.HtmlTableRendererBase.renderFacet(HtmlTableRendererBase.java:751)
at org.apache.myfaces.shared_impl.renderkit.html.HtmlTableRendererBase.beforeBody(HtmlTableRendererBase.java:561)
at org.apache.myfaces.shared_impl.renderkit.html.HtmlTableRendererBase.encodeChildren(HtmlTableRendererBase.java:160)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:464)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:609)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
at org.richfaces.context.ExtendedPartialViewContextImpl$RenderVisitCallback.visit(ExtendedPartialViewContextImpl.java:504)
at org.richfaces.context.BaseExtendedVisitContext.invokeVisitCallback(BaseExtendedVisitContext.java:321)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:750)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:770)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:770)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:770)
at org.richfaces.context.ExtendedPartialViewContextImpl.processPartialRenderPhase(ExtendedPartialViewContextImpl.java:272)
at org.richfaces.context.ExtendedPartialViewContextImpl.processPartial(ExtendedPartialViewContextImpl.java:194)
at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:321)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:609)
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1117)
at org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:231)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59)
at org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper.renderView(ResourceViewHandlerWrapper.java:169)
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:122)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:207)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:191)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.boeing.nmt.nams.view.util.SecurityFilter.doFilter(SecurityFilter.java:71)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.boeing.nmt.nams.view.util.MessageFilter.doFilter(MessageFilter.java:68)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
I am using RichFaces 4.2.2.Final and MyFaces 2.0.0. Please let me know if I am doing something wrong.
Thanks,
RaoV