I request your help due to the fact that I need to carry out a filter by means of rowIndex
of dataTable
, the way in which I obtain the number of the row is as follows
value="#{testBean.dataTable.rowIndex + 1}"
and when I'm going to filter it in the column I'm using
filterBy="#{testBean.dataTable.rowIndex + 1}"
and it generates me error ...?; The complete code is:
<rich:dataTable binding="#{testBean.dataTable }"
var="datosItems" id="tablaDescripcion" rows="10" reRender="ds">
<rich:column width="40px" styleClass="rotuloLeft10"
label="No. Item"
filterBy="#{testBean.dataTable.rowIndex + 1}"
filterEvent="onblur">
<f:facet name="header">
<h:outputText value="No. Item" />
</f:facet>
<h:outputText value="#{testBean.dataTable.rowIndex + 1 }"
title="No. Item" styleClass="rotuloLeft11" />
</rich:column>
<rich:column width="40px" styleClass="rotuloLeft10"
label="Referencia" filterBy="#{datosItems.caReferencia}"
filterEvent="onblur">
<f:facet name="header">
<h:outputText value="Referencia" />
</f:facet>
<h:outputText value="#{datosItems.caReferencia }"
title="Referencia" styleClass="rotuloLeft11" />
</rich:column>
<f:facet name="footer">
<rich:datascroller id="ds" renderIfSinglePage="false" />
</f:facet>
</rich:dataTable>
Error
Caused By: javax.el.ELException: //C:/proyectoDoble/web/build/classes/jsp/ninos/privado/procesos/listaNinos.jsp @1212,33 filterBy="#{testBean.dataTable.rowIndex + 1 }": java.lang.StackOverflowError
at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:76)
at org.richfaces.model.impl.expressive.ValueBindingExpression.evaluate(ValueBindingExpression.java:79)
at org.richfaces.model.impl.expressive.ObjectWrapperFactory.wrapObject(ObjectWrapperFactory.java:209)
at org.richfaces.model.ModifiableModel$RowKeyWrapperFactory.wrapObject(ModifiableModel.java:75)
at org.richfaces.model.impl.expressive.ObjectWrapperFactory$2.convert(ObjectWrapperFactory.java:190)
Truncated. see log file for complete stacktrace
Caused By: java.lang.StackOverflowError
at java.lang.String.indexOf(String.java:1521)
at java.lang.ClassLoader.checkName(ClassLoader.java:776)
at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:948)
at java.lang.ClassLoader.loadClass(ClassLoader.java:292)
at java.lang.ClassLoader.loadClass(ClassLoader.java:296)
Truncated. see log file for complete stacktrace