[jira] [Commented] (WICKET-5013) Wicket Enclosure fails with more than one component
[ https://issues.apache.org/jira/browse/WICKET-5013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13566834#comment-13566834 ] Christoph Leiter commented on WICKET-5013: -- WICKET-5014 is related. detach() is also called here from the WicketObjets.sizeOf(). The change that causes these troubles was introduced by WICKET-4867. > Wicket Enclosure fails with more than one component > --- > > Key: WICKET-5013 > URL: https://issues.apache.org/jira/browse/WICKET-5013 > Project: Wicket > Issue Type: Bug > Components: wicket >Affects Versions: 6.3.0 > Environment: Sun JDK 1.7.0_11 > Ubuntu 12.10 >Reporter: Magne Rasmussen > Attachments: WICKET-5013.zip > > > An enclosure like: > > > > > fails with: > org.apache.wicket.WicketRuntimeException: The component(s) below failed to > render. Possible reasons could be that: 1) you have added a component in code > but forgot to reference it in the markup (thus the component will never be > rendered), 2) if your components were added in a parent container then make > sure the markup for the child container includes them in . > 1. [ExternalLink [Component id = link]] > It will report failed rendering for all components within the enclosure > except the child. > This works if I turn the enclosure into an inline enclosure: > > > > > I got this error when upgrading from Wicket 6.2.0 to 6.3.0. > I also noticed that the AjaxEnclosureListener only visits the > InlineEnclosures. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (WICKET-5013) Wicket Enclosure fails with more than one component
[ https://issues.apache.org/jira/browse/WICKET-5013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13566793#comment-13566793 ] Christoph Leiter commented on WICKET-5013: -- Now that was difficult to reproduce in a quickstart. It happened only if I added the DebugBar. I traced it further down and this happens because getPage().detach() is called (inside DebugBar somewhere, to measure page size). This method calls MarkupContainer#detachChildren and there is this: // We need to keep InlineEnclosures for Ajax request handling. // TODO this is really ugly. Feature request for 1.5: change auto-component that // they don't need to be removed anymore. if (component.isAuto() && !(component instanceof InlineEnclosure)) { children_remove(i); } If I add && !(component instanceof Enclosure) it avoids the problem. I don't have a any real insight how auto components work and so I'm quite certain that this is the wrong approach. :) I'll add a quickstart so that someone can have a look at it. > Wicket Enclosure fails with more than one component > --- > > Key: WICKET-5013 > URL: https://issues.apache.org/jira/browse/WICKET-5013 > Project: Wicket > Issue Type: Bug > Components: wicket >Affects Versions: 6.3.0 > Environment: Sun JDK 1.7.0_11 > Ubuntu 12.10 >Reporter: Magne Rasmussen > Attachments: WICKET-5013.zip > > > An enclosure like: > > > > > fails with: > org.apache.wicket.WicketRuntimeException: The component(s) below failed to > render. Possible reasons could be that: 1) you have added a component in code > but forgot to reference it in the markup (thus the component will never be > rendered), 2) if your components were added in a parent container then make > sure the markup for the child container includes them in . > 1. [ExternalLink [Component id = link]] > It will report failed rendering for all components within the enclosure > except the child. > This works if I turn the enclosure into an inline enclosure: > > > > > I got this error when upgrading from Wicket 6.2.0 to 6.3.0. > I also noticed that the AjaxEnclosureListener only visits the > InlineEnclosures. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (WICKET-5013) Wicket Enclosure fails with more than one component
[ https://issues.apache.org/jira/browse/WICKET-5013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13566439#comment-13566439 ] Martin Grigorov commented on WICKET-5013: - Please attach a quickstart application that demonstrates the problem. Also try with instead of the short version that you use. And try with 6.5.0 too > Wicket Enclosure fails with more than one component > --- > > Key: WICKET-5013 > URL: https://issues.apache.org/jira/browse/WICKET-5013 > Project: Wicket > Issue Type: Bug > Components: wicket >Affects Versions: 6.3.0 > Environment: Sun JDK 1.7.0_11 > Ubuntu 12.10 >Reporter: Magne Rasmussen > > An enclosure like: > > > > > fails with: > org.apache.wicket.WicketRuntimeException: The component(s) below failed to > render. Possible reasons could be that: 1) you have added a component in code > but forgot to reference it in the markup (thus the component will never be > rendered), 2) if your components were added in a parent container then make > sure the markup for the child container includes them in . > 1. [ExternalLink [Component id = link]] > It will report failed rendering for all components within the enclosure > except the child. > This works if I turn the enclosure into an inline enclosure: > > > > > I got this error when upgrading from Wicket 6.2.0 to 6.3.0. > I also noticed that the AjaxEnclosureListener only visits the > InlineEnclosures. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira