Good, thanks!

Vit


On 03/05/2018 04:02 PM, Sven Meier wrote:
This was already complained about and fixed, see latest commit for WICKET-6503.

Have fun
Sven

⁣Gesendet mit Blue ​

Am 5. März 2018, 15:41, um 15:41, Vit Rozkovec <rozkovec...@email.cz> schrieb:
Hi,

I came across one behavior that I do not know if is intentional or not.

I have following hierarchy:

  * Panel1
      o ListView
          + Panel2
          + Panel2
          + ...
      o AjaxLink

AjaxLink on click sends to the page event with Breadth broadcast.

Panel1 reacts and adds itself to the AjaxRequestTarget.
Panel2 reacts and adds itself to the AjaxRequestTarget.

Wicket 8.0.0-M8 and 7.10.0 produce warning:

15:25:08.281 [qtp330382173-21] WARN
org.apache.wicket.page.XmlPartialPageUpdate - Component '[TestPanel2
[Component id = test]]' with markupid: 'test7' not rendered because it
was already removed from page

Wicket 8.0.0-M9 produces exception:

Root cause:

org.apache.wicket.WicketRuntimeException: No Page found for component:
[TestPanel2 [Component id = test, page = <No Page>, path =
0:test.TestPanel2]]. You probably forgot to add it to its parent
component.
at org.apache.wicket.Component.getPage(Component.java:1702)
at org.apache.wicket.Component.renderPart(Component.java:2206)
at
org.apache.wicket.page.XmlPartialPageUpdate.writeComponent(XmlPartialPageUpdate.java:81)
at
org.apache.wicket.page.PartialPageUpdate.writeComponents(PartialPageUpdate.java:262)
at
org.apache.wicket.page.PartialPageUpdate.writeTo(PartialPageUpdate.java:162)
at
org.apache.wicket.ajax.AjaxRequestHandler.respond(AjaxRequestHandler.java:383)
at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:912)
at
org.apache.wicket.request.RequestHandlerExecutor.execute(RequestHandlerExecutor.java:65)
at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:283)
at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:253)
at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:221)
at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:262)
at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:204)
at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:286)
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1629)
at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
at
org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253)
at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
at
org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.Server.handle(Server.java:561)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:334)
at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:104)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:247)
at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:140)
at
org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
at
org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:243)
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:679)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:597)
at java.lang.Thread.run(Thread.java:748)



I understand, that it may not be correct to add child and parent to the

AjaxRequestTarget at the same time when working with events, though if
application is complex enough, it may happen.
A while ago I was also getting MarkupNotFoundException, I cannot
reproduce it at the moment :). Markup was there, as the component was
displayed correctly, exception was thrown during the ajax update, my
gut
feeling is that those two exceptions will have the same cause - adding
the child and the parent at the same time, while child sits in a
repeater.

I have three quickstarts ready - 8.0.0-M9, 8.0.0-M8, 7.10.0 , if you
want.

Best regards
Vit


Reply via email to