Problemas com DataTableScroller Rich Faces[RESOLVIDO]

3 respostas
F
E ai pessoal, estou com problemas para fazer o datascroller funcionar na minha aplicação da esse erro:
org.apache.jasper.JasperException: could not find dataTable with id 'catlist'
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:460)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
	org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
	org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
	org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
	org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)

root cause

java.lang.IllegalArgumentException: could not find dataTable with id 'catlist'
	org.richfaces.component.UIDatascroller.getDataTable(UIDatascroller.java:207)
	org.richfaces.renderkit.html.DatascrollerTemplate.doEncodeEnd(DatascrollerTemplate.java:178)
	org.richfaces.renderkit.html.DatascrollerTemplate.doEncodeEnd(DatascrollerTemplate.java:639)
	org.ajax4jsf.renderkit.RendererBase.encodeEnd(RendererBase.java:135)
	javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:720)
	javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:623)
	javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:546)
	org.apache.jsp.administra_jsp._jspx_meth_rich_005fdatascroller_005f0(administra_jsp.java:858)
	org.apache.jsp.administra_jsp._jspx_meth_h_005fform_005f1(administra_jsp.java:830)
	org.apache.jsp.administra_jsp._jspx_meth_f_005fview_005f0(administra_jsp.java:224)
	org.apache.jsp.administra_jsp._jspService(administra_jsp.java:161)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
	org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
	org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
	org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
	org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
esse é o codigo da página
<h:form>
                        <rich:datascroller for="catlist" maxPages="2"/>
                        <h:dataTable id="catlist" value="#{CategoriaControle.listarTudo}" var="item" border="1" 
                                cellpadding="2" cellspacing="0">
                            <f:facet name="header">
                                <span class="titulo"><h:outputText value="Categorias"/></span>
                            </f:facet>
                            
                            <h:column>
                                <f:facet name="header">
                                    <h:outputText value="Codigo"/>
                                </f:facet>
                                <h:outputText value="#{item.catCodigo}"/>
                            </h:column>
                            
                            <h:column>
                                <f:facet name="header">
                                    <h:outputText value="Nome"/>
                                </f:facet>
                                <h:outputText value="#{item.catNome}"/>
                            </h:column>
                            
                            <h:column>
                                <f:facet name="header">
                                    <h:outputText value="SubCategoria"/>
                                </f:facet>
                                <h:outputText value="#{item.categorias.catNome}"/>
                            </h:column>
                            
                            <h:column>
                                <f:facet name="header">
                                    <h:outputText value="Excluir Categoria"/>
                                </f:facet>
                                <a4j:commandLink id="alt" reRender="formulario" value="Alterar" action="#{CategoriaControle.editarCategoria}"/>
                            </h:column>
                            
                            <h:column>
                                <f:facet name="header">
                                    <h:outputText value="Excluir Categoria"/>
                                </f:facet>
                                <h:commandLink id="exc" value="Excluir" action="#{CategoriaControle.actionBotaoExcluir}"/>
                            </h:column>
                        </h:dataTable>                    
                    </h:form>
não sei o que pode estar acontecendo!

3 Respostas

andretads

esperimenta usar o rich:dataTable on ligar do <h:dataTable> eu fasso assim e funciona… ainda nao testei cm o <h:dataTable> nao
vlw

maurenginaldo

Tive problemas também com o datascroller.
Parece que dependendo da versão do richfaces ele tem esse bug e não acha a tabela.

Resolvi colocando o datascroller abaixo da tabela.
Tenta aí.

F

Cara Valeu deu certo colocando o datascroller em baixo da tabela valew

Criado 25 de janeiro de 2008
Ultima resposta 25 de jan. de 2008
Respostas 3
Participantes 3