[
https://issues.jboss.org/browse/RF-11875?page=com.atlassian.jira.plugin.s...
]
Jan Papousek updated RF-11875:
------------------------------
Steps to Reproduce:
I have used "/richfaces/component-sample.jsf?demo=extendedDataTable" page in RF
Showcase to reproduce the problem.
1. Add the following code in "simpleTable-sample.xhtml" in h:form tag:
{code:xml}
<a4j:commandButton action="#{carsBean.remove}" value="removeFirst"
>
<a4j:param assignTo="#{carsBean.currentCarIndex}" value="1"/>
</a4j:commandButton>
{code}
2.Open this page "/richfaces/component-sample.jsf?demo=extendedDataTable" in
browser.
3.Check "Turn ajax loading on/off" checkbox.
4.Click "removeFirst" button.
5.Scroll table content to the end.
6.Scroll table content to begin.
Table is not refreshed and following exception is logged:
{noformat}
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.LinkedList.entry(LinkedList.java:365)
at java.util.LinkedList.remove(LinkedList.java:357)
at
org.richfaces.renderkit.ExtendedDataTableRenderer$2.process(ExtendedDataTableRenderer.java:520)
at org.ajax4jsf.model.SequenceDataModel.walk(SequenceDataModel.java:65)
at org.richfaces.component.UIDataTableBase.walk(UIDataTableBase.java:261)
at
org.richfaces.renderkit.ExtendedDataTableRenderer.encodeMetaComponent(ExtendedDataTableRenderer.java:512)
at org.richfaces.component.UIDataTableBase.encodeMetaComponent(UIDataTableBase.java:295)
at
org.richfaces.component.AbstractExtendedDataTable.encodeMetaComponent(AbstractExtendedDataTable.java:109)
at
org.richfaces.context.ExtendedPartialViewContextImpl$RenderVisitCallback.visit(ExtendedPartialViewContextImpl.java:493)
at
org.richfaces.context.BaseExtendedVisitContext.invokeVisitCallback(BaseExtendedVisitContext.java:321)
at
org.richfaces.context.ExtendedVisitContext.invokeMetaComponentVisitCallback(ExtendedVisitContext.java:68)
at
org.richfaces.component.AbstractExtendedDataTable.visitDataChildren(AbstractExtendedDataTable.java:122)
at org.richfaces.component.UIDataAdaptor.visitTree(UIDataAdaptor.java:1357)
at javax.faces.component.UIForm.visitTree(UIForm.java:266)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
at
org.richfaces.context.ExtendedPartialViewContextImpl.processPartialRenderPhase(ExtendedPartialViewContextImpl.java:272)
at
org.richfaces.context.ExtendedPartialViewContextImpl.processPartial(ExtendedPartialViewContextImpl.java:194)
at
javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:88)
at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:389)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:617)
...
{noformat}
----
*You can download and deploy already updated richfaces-showcase-jbas7.war from attachments
on JBoss AS 7 (source codes are available on GitHub:*
https://github.com/papousek/showcase/tree/RF-11875 *) instead of updating showcase on your
own*.
was:
I have used "/richfaces/component-sample.jsf?demo=extendedDataTable" page in RF
Showcase to reproduce the problem.
1. Add the following code in "simpleTable-sample.xhtml" in h:form tag:
{code:xml}
<a4j:commandButton action="#{carsBean.remove}" value="removeFirst"
>
<a4j:param assignTo="#{carsBean.currentCarIndex}" value="1"/>
</a4j:commandButton>
{code}
2.Open this page "/richfaces/component-sample.jsf?demo=extendedDataTable" in
browser.
3.Check "Turn ajax loading on/off" checkbox.
4.Click "removeFirst" button.
5.Scroll table content to the end.
6.Scroll table content to begin.
Table is not refreshed and following exception is logged:
{noformat}
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.LinkedList.entry(LinkedList.java:365)
at java.util.LinkedList.remove(LinkedList.java:357)
at
org.richfaces.renderkit.ExtendedDataTableRenderer$2.process(ExtendedDataTableRenderer.java:520)
at org.ajax4jsf.model.SequenceDataModel.walk(SequenceDataModel.java:65)
at org.richfaces.component.UIDataTableBase.walk(UIDataTableBase.java:261)
at
org.richfaces.renderkit.ExtendedDataTableRenderer.encodeMetaComponent(ExtendedDataTableRenderer.java:512)
at org.richfaces.component.UIDataTableBase.encodeMetaComponent(UIDataTableBase.java:295)
at
org.richfaces.component.AbstractExtendedDataTable.encodeMetaComponent(AbstractExtendedDataTable.java:109)
at
org.richfaces.context.ExtendedPartialViewContextImpl$RenderVisitCallback.visit(ExtendedPartialViewContextImpl.java:493)
at
org.richfaces.context.BaseExtendedVisitContext.invokeVisitCallback(BaseExtendedVisitContext.java:321)
at
org.richfaces.context.ExtendedVisitContext.invokeMetaComponentVisitCallback(ExtendedVisitContext.java:68)
at
org.richfaces.component.AbstractExtendedDataTable.visitDataChildren(AbstractExtendedDataTable.java:122)
at org.richfaces.component.UIDataAdaptor.visitTree(UIDataAdaptor.java:1357)
at javax.faces.component.UIForm.visitTree(UIForm.java:266)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
at
org.richfaces.context.ExtendedPartialViewContextImpl.processPartialRenderPhase(ExtendedPartialViewContextImpl.java:272)
at
org.richfaces.context.ExtendedPartialViewContextImpl.processPartial(ExtendedPartialViewContextImpl.java:194)
at
javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:88)
at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:389)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:617)
...
{noformat}
rich:extendedDataTable in ajax loading mode, crashes when dataset
length changes between requests
-------------------------------------------------------------------------------------------------
Key: RF-11875
URL:
https://issues.jboss.org/browse/RF-11875
Project: RichFaces
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: component-ScrollableDataTable
Affects Versions: 4.1.0.Final
Environment: JSF-RI 2.0, Tomcat 6.0.29
Reporter: Dmitry Volkov
Assignee: Jan Papousek
Attachments: richfaces-showcase-jbas7.war
rich:extendedDataTable in ajax loading mode(clientRows=".."), crashes when
dataset length changes between requests.
It makes ajax loading mode unusable for database paging.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira