Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.3.0-beta2, 1.3.0-beta3
-
None
Description
Attached is my attempt to get a list that is ajax refreshed just at the tail. It's implemented as a sort of linked list. There are two versions. 'list' implements each node as a Panel, having contents (a number) and a next container which is made visible and ajax refreshed when one new element is added to the list. 'list2' does the same but using a Fragment instead of a Panel. You guessed, panels works just fine, but for the fragments version I get the usual transparent containers exception when trying to append an element:
WicketMessage: Unable to find the markup for the component. That may be due to transparent containers or components implementing IComponentResolver: [MarkupContainer [Component id = nextContainer, page = web.list2.ListPage, path = 0:first:nextContainer.WebMarkupContainer, isVisible = true, isVersioned = true]]
Root cause:
org.apache.wicket.WicketRuntimeException: Unable to find the markup for the component. That may be due to transparent containers or components implementing IComponentResolver: [MarkupContainer [Component id = nextContainer, page = web.list2.ListPage, path = 0:first:nextContainer.WebMarkupContainer, isVisible = true, isVersioned = true]]
at org.apache.wicket.MarkupFragmentFinder.find(MarkupFragmentFinder.java:111)
at org.apache.wicket.Component.locateMarkupStream(Component.java:3274)
at org.apache.wicket.Component.renderComponent(Component.java:2087)
at org.apache.wicket.ajax.AjaxRequestTarget.respondComponent(AjaxRequestTarget.java:772)
at org.apache.wicket.ajax.AjaxRequestTarget.respondComponents(AjaxRequestTarget.java:672)
at org.apache.wicket.ajax.AjaxRequestTarget.respond(AjaxRequestTarget.java:522)
at org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:103)
at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1038)