First element in this loop is :myPanel:myLoop:0:myComponent and on ajax request targeting this element markupStream.findComponentIndex method is trying to find myComponent within this :myLoop:0 relative path, but there is no such a path in markupStream (markup contains :myLoop path only) and I end up with this exception:
wicket.WicketRuntimeException: Unable to determine markup for component: [MarkupContainer [Component id = gmarkerContainer, page = wicket.contrib.examples.gmap.HomePage, path = 9:gmap:gmapContainer:gmarkersLoop:1: gmarkerContainer.GMarkerContainer, isVisible = true, isVersioned = true]]
at wicket.request.target.ComponentRequestTarget.respond(ComponentRequestTarget.java:73)
at wicket.request.compound.DefaultResponseStrategy.respond (DefaultResponseStrategy.java:47)
at wicket.request.compound.AbstractCompoundRequestCycleProcessor.respond(AbstractCompoundRequestCycleProcessor.java:66)
at wicket.RequestCycle.doProcessEventsAndRespond(RequestCycle.java :811)
I dont know which is correct behavior but I think relative path has to be :myLoop instead of :myLoop:0.
/iulian