Tony,

On your ListView, try setReuseItems(true) and force a removeAll() ... Any
different? 
It's seems like the number of elements in your ListView's model object (the
ArrayList mentioned in the stack trace) has changed (been reduced) by the
time the WMC is refreshed, and then the new "size" no longer matches some
stale "size".

Regards - Cemal
http://www.jWeekend.co.uk http://jWeekend.co.uk 



tfu wrote:
> 
> Hi Cemal,
> 
> The populateItem method is just doing what it is supposed to do for a
> ListView and nothing fancy. Moreover, my other ListViews are working just
> fine. I suspect it is the AjaxSelfUpdatingTimerBehavior which is causing
> the problem, but I don't know exactly the root of it and how to work
> around with this problem. 
> 
> Regards,
> Tony
> 
> 
> jWeekend wrote:
>> 
>> tfu,
>> 
>> What does your populateItem implementation (conveniently dotted out ;-)
>> look like? 
>> Are you looking for an element (with index = 23) in the ListView's
>> backing ArrayList that does not (no longer) exist(s). 
>> 
>> Regards - Cemal
>>  http://www.jWeekend.co.uk http://jWeekend.co.uk 
>> 
>> 
>> tfu wrote:
>>> 
>>> I'm using Wicket 1.3.2 and I got this weird exception.
>>> 
>>> -- source code
>>>         WebMarkupContainer result = new WebMarkupContainer("result");
>>>         result.add(new
>>> AjaxSelfUpdatingTimerBehavior(Duration.seconds(5)));
>>>         ListView view = new ListView("connections", new
>>> PropertyModel(this, "connections")){...};
>>>     result.add(view);
>>>         add(result);
>>> 
>>> -- exception
>>> 
>>>  2008-08-19 13:46:46,749 ERROR [TP-Processor3]
>>> org.apache.wicket.RequestCycle - Error attaching this container for
>>> rendering: [MarkupContainer [Component id = result, page =
>>> com.xxxx.rss.web.connection.ShowConnection, path =
>>> 16:panel:result.WebMarkupContainer, isVisible = true, isVersioned =
>>> false]]
>>>  org.apache.wicket.WicketRuntimeException: Error attaching this
>>> container for rendering: [MarkupContainer [Component id = result, page =
>>> com.xxxx.rss.web.connection.ShowConnection, path =
>>> 16:panel:result.WebMarkupContainer, isVisible = true, isVersioned =
>>> false]]
>>>         at
>>> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1589)
>>>         at
>>> org.apache.wicket.Component.onBeforeRender(Component.java:3673)
>>>         at
>>> org.apache.wicket.Component.internalBeforeRender(Component.java:995)
>>>         at org.apache.wicket.Component.beforeRender(Component.java:1027)
>>>         at
>>> org.apache.wicket.Component.prepareForRender(Component.java:2151)
>>>         at
>>> org.apache.wicket.ajax.AjaxRequestTarget.respondComponent(AjaxRequestTarget.java:698)
>>>         at
>>> org.apache.wicket.ajax.AjaxRequestTarget.respondComponents(AjaxRequestTarget.java:605)
>>>         at
>>> org.apache.wicket.ajax.AjaxRequestTarget.respond(AjaxRequestTarget.java:520)
>>>         at
>>> org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:104)
>>>         at
>>> org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1172)
>>>         at org.apache.wicket.RequestCycle.step(RequestCycle.java:1243)
>>>         at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1330)
>>>         at org.apache.wicket.RequestCycle.request(RequestCycle.java:493)
>>>         at
>>> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:358)
>>>         at
>>> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:194)
>>>         at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>>>         at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>>>         at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
>>>         at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
>>>         at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>>>         at
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>>>         at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>>>         at
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
>>>         at
>>> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
>>>         at
>>> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
>>>         at
>>> org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
>>>         at
>>> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
>>>         at
>>> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
>>>         at
>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
>>>         at java.lang.Thread.run(Thread.java:595)
>>> Caused by: java.lang.IndexOutOfBoundsException: Index: 23, Size: 23
>>>         at java.util.ArrayList.RangeCheck(ArrayList.java:547)
>>>         at java.util.ArrayList.get(ArrayList.java:322)
>>>         at
>>> org.apache.wicket.markup.html.list.ListItemModel.getObject(ListItemModel.java:55)
>>>         at
>>> org.apache.wicket.Component.getModelObject(Component.java:1551)
>>>         at
>>> com.xxxx.rss.web.connection.ShowConnectionPanel$1.populateItem(ShowConnectionPanel.java:86)
>>>         at
>>> org.apache.wicket.markup.html.list.ListView.onPopulate(ListView.java:573)
>>>         at
>>> org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:127)
>>>         at
>>> org.apache.wicket.Component.internalBeforeRender(Component.java:995)
>>>         at org.apache.wicket.Component.beforeRender(Component.java:1027)
>>>         at
>>> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1577)
>>>         ... 29 more
>>> 
>>> 
>>> Any feedback is highly appreciated
>>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Help-needed---ListView.onPopulate-IndexOutOfBoundsException-tp19058649p19060290.html
Sent from the Wicket - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to