Guten Tag Thorsten Schöning, am Freitag, 11. März 2016 um 19:45 schrieben Sie:
> I tried to track this down and recognized one important difference: The following are parts of the stacktrace after a clean startup with a breakpoint in EnclosureHandler, where the tag has the following id and content: > wicket_enclosure34: <wicket:enclosure child="home.cmds.blackOrWhitelist"> > Daemon Thread [http-bio-127.0.0.1-8081-exec-5] (Suspended (breakpoint at line > 131 in EnclosureHandler)) > owns: SocketWrapper<E> (id=89) > EnclosureHandler.onComponentTag(ComponentTag) line: 131 > EnclosureHandler(AbstractMarkupFilter).nextElement() line: 100 > InlineEnclosureHandler(AbstractMarkupFilter).nextElement() line: 95 > ConditionalCommentFilter(AbstractMarkupFilter).nextElement() line: 95 > WicketContainerTagHandler(AbstractMarkupFilter).nextElement() line: 95 > RelativePathPrefixHandler(AbstractMarkupFilter).nextElement() line: 95 > StyleAndScriptIdentifier(AbstractMarkupFilter).nextElement() line: 95 > MarkupFactory$1(AbstractMarkupParser).getNextTag() line: 217 > MarkupFactory$1(AbstractMarkupParser).parseMarkup() line: 232 > MarkupFactory$1(AbstractMarkupParser).parse() line: 185 > SimpleMarkupLoader.loadMarkup(MarkupContainer, MarkupResourceStream, > IMarkupLoader, boolean) line: 51 > InheritedMarkupMarkupLoader.loadMarkup(MarkupContainer, > MarkupResourceStream, IMarkupLoader, boolean) line: 57 > DefaultMarkupLoader.loadMarkup(MarkupContainer, MarkupResourceStream, > IMarkupLoader, boolean) line: 52 > MarkupFactory.loadMarkup(MarkupContainer, MarkupResourceStream, > boolean) line: 412 > MarkupCache.loadMarkup(MarkupContainer, MarkupResourceStream, > boolean) line: 447 > MarkupCache.loadMarkupAndWatchForChanges(MarkupContainer, > MarkupResourceStream, boolean) line: 543 > MarkupCache.getMarkup(MarkupContainer, Class<?>, boolean) line: 304 > MarkupFactory.getMarkup(MarkupContainer, Class<?>, boolean) line: 236 > MarkupFactory.getMarkup(MarkupContainer, boolean) line: 194 > PnNav(MarkupContainer).getAssociatedMarkup() line: 456 > PnNav(MarkupContainer).getRegionMarkup() line: 2224 > PnNav(Panel).getRegionMarkup() line: 96 > PnNav(MarkupContainer).newDequeueContext() line: 2211 > PnNav(MarkupContainer).dequeue() line: 2029 > WebMarkupContainer(MarkupContainer).addedComponent(Component) line: > 1049 > WebMarkupContainer(MarkupContainer).add(Component...) line: 239 > HomePage.<init>(PageParameters) line: 25 > NativeConstructorAccessorImpl.newInstance0(Constructor, Object[]) > line: not available [native method] > NativeConstructorAccessorImpl.newInstance(Object[]) line: 57 > DelegatingConstructorAccessorImpl.newInstance(Object[]) line: 45 > Constructor<T>.newInstance(Object...) line: 526 > DefaultPageFactory.newPage(Constructor<C>, PageParameters) line: 171 > DefaultPageFactory.newPage(Class<C>) line: 76 > DefaultMapperContext.newPageInstance(Class<IRequestablePage>, > PageParameters) line: 102 > PageProvider.resolvePageInstance(Integer, Class<IRequestablePage>, > PageParameters, Integer) line: 271 > PageProvider.getPageInstance() line: 169 > WebPageRenderer(PageRenderer).getPage() line: 78 > WebPageRenderer.isPageStateless() line: 287 > WebPageRenderer.shouldRenderPageAndWriteResponse(RequestCycle, Url, > Url) line: 329 > WebPageRenderer.respond(RequestCycle) line: 193 > RenderPageRequestHandler.respond(IRequestCycle) line: 175 The following is the same stacktrace after a restart of Tomcat and as you can see, the id of the tag in EnclosureHandler is different now and markup is only parsed because the Enclosure instance from the page cache with the old id needs its child component and tries to find it in the markup: > wicket_enclosure12: <wicket:enclosure child="home.cmds.blackOrWhitelist"> > Daemon Thread [http-bio-127.0.0.1-8081-exec-3] (Suspended (breakpoint at line > 131 in EnclosureHandler)) > owns: SocketWrapper<E> (id=84) > EnclosureHandler.onComponentTag(ComponentTag) line: 131 > EnclosureHandler(AbstractMarkupFilter).nextElement() line: 100 > InlineEnclosureHandler(AbstractMarkupFilter).nextElement() line: 95 > ConditionalCommentFilter(AbstractMarkupFilter).nextElement() line: 95 > WicketContainerTagHandler(AbstractMarkupFilter).nextElement() line: 95 > RelativePathPrefixHandler(AbstractMarkupFilter).nextElement() line: 95 > StyleAndScriptIdentifier(AbstractMarkupFilter).nextElement() line: 95 > MarkupFactory$1(AbstractMarkupParser).getNextTag() line: 217 > MarkupFactory$1(AbstractMarkupParser).parseMarkup() line: 232 > MarkupFactory$1(AbstractMarkupParser).parse() line: 185 > SimpleMarkupLoader.loadMarkup(MarkupContainer, MarkupResourceStream, > IMarkupLoader, boolean) line: 51 > InheritedMarkupMarkupLoader.loadMarkup(MarkupContainer, > MarkupResourceStream, IMarkupLoader, boolean) line: 57 > DefaultMarkupLoader.loadMarkup(MarkupContainer, MarkupResourceStream, > IMarkupLoader, boolean) line: 52 > MarkupFactory.loadMarkup(MarkupContainer, MarkupResourceStream, > boolean) line: 412 > MarkupCache.loadMarkup(MarkupContainer, MarkupResourceStream, > boolean) line: 447 > MarkupCache.loadMarkupAndWatchForChanges(MarkupContainer, > MarkupResourceStream, boolean) line: 543 > MarkupCache.getMarkup(MarkupContainer, Class<?>, boolean) line: 304 > MarkupFactory.getMarkup(MarkupContainer, Class<?>, boolean) line: 236 > MarkupFactory.getMarkup(MarkupContainer, boolean) line: 194 > PnNav(MarkupContainer).getAssociatedMarkup() line: 456 > > PanelMarkupSourcingStrategy(AssociatedMarkupSourcingStrategy).getMarkup(MarkupContainer, > Component) line: 95 > PnNav(MarkupContainer).getMarkup(Component) line: 502 > Enclosure(Component).getMarkup() line: 755 > Enclosure.getChild() line: 138 > Enclosure.onConfigure() line: 180 > Enclosure(Component).configure() line: 1055 > Enclosure(Component).internalBeforeRender() line: 940 > Enclosure(Component).beforeRender() line: 1017 > PnNav(MarkupContainer).onBeforeRenderChildren() line: 1866 > PnNav(Component).onBeforeRender() line: 3877 > PnNav(Component).internalBeforeRender() line: 949 > PnNav(Component).beforeRender() line: 1017 > WebMarkupContainer(MarkupContainer).onBeforeRenderChildren() line: > 1866 > WebMarkupContainer(Component).onBeforeRender() line: 3877 > WebMarkupContainer(Component).internalBeforeRender() line: 949 > WebMarkupContainer(Component).beforeRender() line: 1017 > HomePage(MarkupContainer).onBeforeRenderChildren() line: 1866 > HomePage(Component).onBeforeRender() line: 3877 > HomePage(Page).onBeforeRender() line: 801 > HomePage(Component).internalBeforeRender() line: 949 > HomePage(Component).beforeRender() line: 1017 > HomePage(Component).internalPrepareForRender(boolean) line: 2215 > HomePage(Page).internalPrepareForRender(boolean) line: 242 > HomePage(Component).render() line: 2304 > HomePage(Page).renderPage() line: 1018 > WebPageRenderer.renderPage(Url, RequestCycle) line: 124 > WebPageRenderer.respond(RequestCycle) line: 195 > RenderPageRequestHandler.respond(IRequestCycle) line: 175 Mit freundlichen Grüßen, Thorsten Schöning -- Thorsten Schöning E-Mail: [email protected] AM-SoFT IT-Systeme http://www.AM-SoFT.de/ Telefon...........05151- 9468- 55 Fax...............05151- 9468- 88 Mobil..............0178-8 9468- 04 AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
