On Thu, Mar 8, 2012 at 7:44 PM, Andrea Del Bene <an.delb...@gmail.com>wrote:
> Your code seems good, I can't find any reason why it should not work. I've > seen you have deployed your code on Google Appengine, maybe your problem is > related with this running environment. Can you run you project locally and > reproduce the problem? > I'm running on local AppEngine dev server. If I may ask, have you ever included a Panel inside another Panel before? Did it work? All examples I have seen shows including a Panel in a Page. I have never seen an example of a Panel included within a Panel. If you have, please show me an example. > Here it is: >> >> Root cause: >> >> org.apache.wicket.**WicketRuntimeException: The component(s) below >> failed to >> render. A common problem is that you have added a component in code but >> forgot to reference it in the markup (thus the component will never be >> rendered). >> >> 1. [SearchForm [Component id = searchForm]] >> 2. [TextField [Component id = searchtextfield]] >> >> at org.apache.wicket.Page.**checkRendering(Page.java:693) >> at org.apache.wicket.Page.**onAfterRender(Page.java:849) >> at >> org.apache.wicket.markup.html.**WebPage.onAfterRender(WebPage.**java:213) >> at org.apache.wicket.Component.**afterRender(Component.java:**950) >> at org.apache.wicket.Component.**render(Component.java:2298) >> at org.apache.wicket.Page.**renderPage(Page.java:1041) >> 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:781) >> at >> org.apache.wicket.request.**RequestHandlerStack.execute(** >> RequestHandlerStack.java:64) >> at >> org.apache.wicket.request.**cycle.RequestCycle.execute(** >> RequestCycle.java:255) >> at >> org.apache.wicket.request.**cycle.RequestCycle.** >> processRequest(RequestCycle.**java:212) >> at >> org.apache.wicket.request.**cycle.RequestCycle.**processRequestAndDetach( >> **RequestCycle.java:283) >> at >> org.apache.wicket.protocol.**http.WicketFilter.** >> processRequest(WicketFilter.**java:162) >> at >> org.apache.wicket.protocol.**http.WicketFilter.doFilter(** >> WicketFilter.java:218) >> at >> org.mortbay.jetty.servlet.**ServletHandler$CachedChain.** >> doFilter(ServletHandler.java:**1157) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:312) >> at >> org.springframework.security.**web.access.intercept.** >> FilterSecurityInterceptor.**invoke(**FilterSecurityInterceptor.** >> java:116) >> at >> org.springframework.security.**web.access.intercept.** >> FilterSecurityInterceptor.**doFilter(**FilterSecurityInterceptor.** >> java:83) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.access.**ExceptionTranslationFilter.** >> doFilter(**ExceptionTranslationFilter.**java:95) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.session.**SessionManagementFilter.** >> doFilter(**SessionManagementFilter.java:**100) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.authentication.** >> AnonymousAuthenticationFilter.**doFilter(**AnonymousAuthenticationFilter. >> **java:79) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.servletapi.** >> SecurityContextHolderAwareRequ**estFilter.doFilter(** >> SecurityContextHolderAwareRequ**estFilter.java:54) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.savedrequest.** >> RequestCacheAwareFilter.**doFilter(**RequestCacheAwareFilter.java:**35) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.authentication.www.** >> BasicAuthenticationFilter.**doFilter(**BasicAuthenticationFilter.** >> java:119) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.authentication.** >> AbstractAuthenticationProcessi**ngFilter.doFilter(** >> AbstractAuthenticationProcessi**ngFilter.java:187) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.authentication.logout.** >> LogoutFilter.doFilter(**LogoutFilter.java:105) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.context.** >> SecurityContextPersistenceFilt**er.doFilter(** >> SecurityContextPersistenceFilt**er.java:80) >> at >> org.springframework.security.**web.FilterChainProxy$** >> VirtualFilterChain.doFilter(**FilterChainProxy.java:324) >> at >> org.springframework.security.**web.FilterChainProxy.doFilter(** >> FilterChainProxy.java:165) >> at >> org.springframework.web.**filter.DelegatingFilterProxy.**invokeDelegate(* >> *DelegatingFilterProxy.java:**237) >> at >> org.springframework.web.**filter.DelegatingFilterProxy.**doFilter(** >> DelegatingFilterProxy.java:**167) >> at >> org.mortbay.jetty.servlet.**ServletHandler$CachedChain.** >> doFilter(ServletHandler.java:**1157) >> at >> com.google.appengine.tools.**development.**HeaderVerificationFilter.** >> doFilter(**HeaderVerificationFilter.java:**35) >> at >> org.mortbay.jetty.servlet.**ServletHandler$CachedChain.** >> doFilter(ServletHandler.java:**1157) >> at >> com.google.appengine.api.**blobstore.dev.ServeBlobFilter.** >> doFilter(ServeBlobFilter.java:**58) >> at >> org.mortbay.jetty.servlet.**ServletHandler$CachedChain.** >> doFilter(ServletHandler.java:**1157) >> at >> com.google.apphosting.utils.**servlet.**TransactionCleanupFilter.** >> doFilter(**TransactionCleanupFilter.java:**43) >> at >> org.mortbay.jetty.servlet.**ServletHandler$CachedChain.** >> doFilter(ServletHandler.java:**1157) >> at >> com.google.appengine.tools.**development.StaticFileFilter.** >> doFilter(StaticFileFilter.**java:122) >> at >> org.mortbay.jetty.servlet.**ServletHandler$CachedChain.** >> doFilter(ServletHandler.java:**1157) >> at >> com.google.appengine.tools.**development.**BackendServersFilter.doFilter( >> **BackendServersFilter.java:94) >> at >> org.mortbay.jetty.servlet.**ServletHandler$CachedChain.** >> doFilter(ServletHandler.java:**1157) >> at >> org.mortbay.jetty.servlet.**ServletHandler.handle(** >> ServletHandler.java:388) >> at >> org.mortbay.jetty.security.**SecurityHandler.handle(** >> SecurityHandler.java:216) >> at >> org.mortbay.jetty.servlet.**SessionHandler.handle(** >> SessionHandler.java:182) >> at >> org.mortbay.jetty.handler.**ContextHandler.handle(** >> ContextHandler.java:765) >> at >> org.mortbay.jetty.webapp.**WebAppContext.handle(**WebAppContext.java:418) >> at >> com.google.apphosting.utils.**jetty.**DevAppEngineWebAppContext.**handle( >> **DevAppEngineWebAppContext.**java:70) >> at >> org.mortbay.jetty.handler.**HandlerWrapper.handle(** >> HandlerWrapper.java:152) >> at >> com.google.appengine.tools.**development.**JettyContainerService$** >> ApiProxyHandler.handle(**JettyContainerService.java:**351) >> at >> org.mortbay.jetty.handler.**HandlerWrapper.handle(** >> HandlerWrapper.java:152) >> at org.mortbay.jetty.Server.**handle(Server.java:326) >> at >> org.mortbay.jetty.**HttpConnection.handleRequest(** >> HttpConnection.java:542) >> at >> org.mortbay.jetty.**HttpConnection$RequestHandler.** >> headerComplete(HttpConnection.**java:923) >> at org.mortbay.jetty.HttpParser.**parseNext(HttpParser.java:547) >> at org.mortbay.jetty.HttpParser.**parseAvailable(HttpParser.** >> java:212) >> at org.mortbay.jetty.**HttpConnection.handle(** >> HttpConnection.java:404) >> at >> org.mortbay.io.nio.**SelectChannelEndPoint.run(** >> SelectChannelEndPoint.java:**409) >> at >> org.mortbay.thread.**QueuedThreadPool$PoolThread.** >> run(QueuedThreadPool.java:582) >> >> On Thu, Mar 8, 2012 at 6:00 PM, Andrea Del Bene<adelb...@ciseonweb.it>** >> wrote: >> >> Hi, >>> >>> can you show the complete stacktrace of the exception? >>> >>> I have an application structured such that I have 2 version for header >>> >>>> panels. One for anonymous(HeaderPanel) users and one for >>>> authenticated(****AuthenticatedHeaderPanel) users. Both of these are >>>> Panels >>>> >>>> included in their respective pages. >>>> >>>> Now I added another Panel (SearchPanel. It contains a Form) inside the >>>> AuthenticatedHeaderPanel, then included the AuthenticatedHeaderPanel >>>> inside >>>> a Page (ProfilePage). Somehow, the ProfilePage couldn't find the markups >>>> in >>>> the SearchPanel. >>>> >>>> AuthenticatedHeaderPanel.java >>>> ------------------------------****--------------- >>>> >>>> public class AuthenticatedHeaderPanel extends Panel { >>>> >>>> public AuthenticatedHeaderPanel(****String id, IModel<?> model) { >>>> >>>> super(id, model); >>>> add(new SearchPanel("searchPanel")); >>>> } >>>> } >>>> >>>> AuthenticatedHeaderPanel.html >>>> ------------------------------****---------------- >>>> >>>> <div wicket:id="searchPanel"></div> >>>> >>>> SearchPanel.java >>>> ------------------------- >>>> public class SearchPanel extends Panel { >>>> >>>> public SearchPanel(String id) { >>>> super(id); >>>> Form loginForm = new Form("searchForm") { >>>> >>>> }; >>>> add(loginForm); >>>> loginForm.add(new TextField("searchtextfield")); >>>> } >>>> } >>>> >>>> SearchPanel.html >>>> ------------------------- >>>> <wicket:panel> >>>> <form wicket:id="searchForm"> >>>> <input wicket:id="searchtextfield" type="text" /> >>>> <input type="submit" /> >>>> </form> >>>> <wicket:panel> >>>> >>>> AuthenticatedBasePage.java >>>> ------------------------------****------------ >>>> >>>> public class AuthenticatedBasePage extends WebPage { >>>> >>>> public AuthenticatedBasePage() { >>>> super(); >>>> add(new AuthenticatedHeaderPanel("****state-header", new >>>> Model(""))); >>>> >>>> } >>>> } >>>> >>>> ProfilePage.html >>>> ------------------------ >>>> <span wicket:id="state-header" /> >>>> >>>> ProfilePage.java >>>> ----------------------- >>>> public class ProfilePage extends AuthenticatedBasePage { >>>> >>>> public ProfilePage() { >>>> super(); >>>> } >>>> } >>>> >>>> What could I be doing wrong? >>>> >>>> Thanks >>>> >>>> >>>> ------------------------------****----------------------------** >>> --**--------- >>> To unsubscribe, e-mail: >>> users-unsubscribe@wicket.**apa**che.org<http://apache.org> >>> <users-unsubscribe@**wicket.apache.org<users-unsubscr...@wicket.apache.org> >>> > >>> >>> For additional commands, e-mail: users-h...@wicket.apache.org >>> >>> >>> >> > > ------------------------------**------------------------------**--------- > To unsubscribe, e-mail: > users-unsubscribe@wicket.**apache.org<users-unsubscr...@wicket.apache.org> > For additional commands, e-mail: users-h...@wicket.apache.org > > -- Odeyemi 'Kayode O. http://ng.linkedin.com/in/kayodeodeyemi. t: @charyorde blog: http://sinati.com/tree/java-cheat-sheet