ScrollableDataTable exception
antony.mandilas Sep 13, 2008 4:24 PMDear all,
after i upgrade the library to version 3.2.2 when ever i try to click on a row or make any other action like sorting i get the following exception:
java.lang.ArrayIndexOutOfBoundsException: 3
 org.richfaces.renderkit.html.ScrollableDataTableBaseRenderer.doDecode(ScrollableDataTableBaseRenderer.java:651)
 org.ajax4jsf.renderkit.RendererBase.decode(RendererBase.java:76)
 javax.faces.component.UIComponentBase.decode(UIComponentBase.java:789)
 org.ajax4jsf.component.UIDataAdaptor.processDecodes(UIDataAdaptor.java:1159)
 org.ajax4jsf.component.UIDataAdaptor.processDecodes(UIDataAdaptor.java:1168)
 org.richfaces.component.UIScrollableDataTable.processDecodes(UIScrollableDataTable.java:140)
 javax.faces.component.UIForm.processDecodes(UIForm.java:209)
 javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1026)
 javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1026)
 javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1026)
 javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1026)
 org.ajax4jsf.component.AjaxViewRoot$1.invokeContextCallback(AjaxViewRoot.java:392)
 org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
 org.ajax4jsf.component.AjaxViewRoot.processDecodes(AjaxViewRoot.java:409)
 com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78)
 com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
 com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
 javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
 org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
 org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
 org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
 org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
my code is the following:
<rich:scrollableDataTable rowKeyVar="rkv" frozenColCount="1" height="400px" width="620px"
 id="availableGroups" rows="40"
 value="#{UserGroupsBB.activeGroups}" var="group" sortMode="single"
 binding="#{UserGroupsBB.table}"
 selection="#{UserGroupsBB.selection}">
 <a4j:support event="onRowClick" action="#{UserGroupsBB.takeSelectionAction}"
 reRender="updateUserGroupCommand, createNewUserGroup"/>
 <rich:column id="groupId" width="200px">
 <f:facet name="header"><h:outputText styleClass="headerText" value="#{messages.groupId}"/></f:facet>
 <h:outputText value="#{group.groupId}"/>
 </rich:column>
 <rich:column id="groupName" width="200px">
 <f:facet name="header"><h:outputText styleClass="headerText" value="#{messages.groupName}"/></f:facet>
 <h:outputText value="#{group.groupName}"/>
 </rich:column>
 <rich:column id="dateAdded" width="100px">
 <f:facet name="header">
 <h:outputText styleClass="headerText" value="#{messages.dateadded}"/>
 </f:facet>
 <h:outputText value="#{group.dateAdded}">
 <f:convertDateTime pattern="dd/MM/yyyy HH:mm"/>
 </h:outputText>
 </rich:column>
 <rich:column id="active">
 <f:facet name="header"><h:outputText styleClass="headerText" value="#{messages.active}"/></f:facet>
 <h:outputText value="#{group.active}"/>
 </rich:column>
 </rich:scrollableDataTable>
if i remove the a4j:support then the table operates fine. But i need it so that when a row is click some other parts of the page to be rerendered. I don't know if i could do it with some other way. But for sure this was working on version 3.2.1 with no exception.
Kind regards,
Antony
 
     
    