[ 
https://issues.apache.org/jira/browse/WICKET-4172?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Martin Grigorov updated WICKET-4172:
------------------------------------

    Attachment: WICKET-4172.patch

A patch that solves the problem by manipulating the childId if it is 
constructed by several parts ( 'a:b:c:d' ) and creating copy ComponentTag with 
the original child id if all the path pieces match.
                
> Enclosure in TransparentWebMarkupContainer throws WicketRuntimeException
> ------------------------------------------------------------------------
>
>                 Key: WICKET-4172
>                 URL: https://issues.apache.org/jira/browse/WICKET-4172
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.5.2
>            Reporter: Dirk Forchel
>            Priority: Minor
>         Attachments: WICKET-4172.patch, enclosure.zip
>
>
> Using the Wicket enclosure-tag in an TransparentWebMarkupContainer throws the 
> following exception. I've just converted some working 1.4.18 code to 1.5.2 
> and got this error (see also 
> http://apache-wicket.1842946.n4.nabble.com/Enclosures-and-transparent-WebContainer-tp3935753p3935753.html).
>  Changing the component hierarchy without using a transparent 
> WebMarkupContainer would fix the problem, but this is not an option if you 
> migrate projects from 1.4 to 1.5
> org.apache.wicket.WicketRuntimeException: Could not find child with id: 
> column:info in the wicket:enclosure
>         at 
> org.apache.wicket.markup.html.internal.Enclosure.checkChildComponent(Enclosure.java:232)
>         at 
> org.apache.wicket.markup.html.internal.Enclosure.getChildComponent(Enclosure.java:211)
>         at 
> org.apache.wicket.markup.html.internal.Enclosure.onInitialize(Enclosure.java:127)
>         at org.apache.wicket.Component.fireInitialize(Component.java:919)
>         at 
> org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:1002)
>         at 
> org.apache.wicket.MarkupContainer.addedComponent(MarkupContainer.java:979)
>         at org.apache.wicket.MarkupContainer.add(MarkupContainer.java:171)
>         at org.apache.wicket.MarkupContainer.autoAdd(MarkupContainer.java:300)
>         at 
> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1463)
>         at 
> org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1638)
>         at 
> org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1613)
>         at 
> org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1567)
>         at 
> org.apache.wicket.markup.html.panel.DefaultMarkupSourcingStrategy.onComponentTagBody(DefaultMarkupSourcingStrategy.java:72)
>         at 
> org.apache.wicket.Component.internalRenderComponent(Component.java:2516)
>         at 
> org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1576)
>         at org.apache.wicket.Component.internalRender(Component.java:2346)
>         at org.apache.wicket.Component.render(Component.java:2274)
>         at 
> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1474)
>         at 
> org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1638)
>         at org.apache.wicket.Page.onRender(Page.java:904)
>         at org.apache.wicket.markup.html.WebPage.onRender(WebPage.java:140)
>         at org.apache.wicket.Component.internalRender(Component.java:2346)
>         at org.apache.wicket.Component.render(Component.java:2274)
>         at org.apache.wicket.Page.renderPage(Page.java:1035)
>         at 
> org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
>         at 
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)
>         at 
> org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
>         at 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:750)
>         at 
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>         at 
> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:252)
>         at 
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:209)
>         at 
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:280)
>         at 
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162)
>         at 
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:218)
>         at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>         at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>         at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>         at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>         at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
>         at org.eclipse.jetty.server.Server.handle(Server.java:349)
>         at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
>         at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
>         at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
>         at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:46)
>         at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
>         at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
>         at java.lang.Thread.run(Thread.java:662)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to