with a proper quickstart because fast check shows that
bookmarkablePageLink#getPageClass() returns null and this seems to be
impossible since there is a check for null in the constructor

On Mon, May 16, 2011 at 5:18 PM, Igor Vaynberg <[email protected]>wrote:

> these reports should go into jira
>
> -igor
>
>
> On Sun, May 15, 2011 at 11:40 PM, nino martinez wael
> <[email protected]> wrote:
> > Hi
> >
> > Essentially I just want to hide all links leading to unauthorized pages.
> >
> > I get exceptions when I do this in my AuthenticatedWebApplication,
> > there are no exceptions when I run the app without the part below:
> >
> > protected void init() {
> >                super.init();
> >                getComponentInstantiationListeners().add(
> >                                new IComponentInstantiationListener() {
> >
> >                                        @Override
> >                                        public void
> onInstantiation(Component arg0) {
> >                                                if
> (AutolinkBookmarkablePageLink.class
> >
>  .isAssignableFrom(arg0.getClass())) {
> >
>  AutolinkBookmarkablePageLink link = AutolinkBookmarkablePageLink.class
> >
>  .cast(arg0);
> >                                                        Boolean
> shouldRender = CCAdminSession
> >
>  .get()
> >
>  .getAuthorizationStrategy()
> >
>  .isInstantiationAuthorized(
> >
>              link.getPageClass());
> >
>  arg0.setVisible(shouldRender);
> >
> >                                                }
> >                                        }
> >                                });
> >
> >
> >
> > Exception:
> >
> > 2011-05-16 08:37:03,968 ERROR
> > [org.apache.wicket.DefaultExceptionMapper]  - Unexpected error
> > occurred
> > org.apache.wicket.WicketRuntimeException: Exception in rendering
> > component: [TransparentWebMarkupContainer [Component id =
> > _wicket_link-8]]
> >        at
> org.apache.wicket.Component.internalRenderComponent(Component.java:2590)
> >        at
> org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1491)
> >        at org.apache.wicket.Component.internalRender(Component.java:2394)
> >        at org.apache.wicket.Component.render(Component.java:2322)
> >        at
> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1425)
> >        at
> org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1553)
> >        at org.apache.wicket.Page.onRender(Page.java:989)
> >        at org.apache.wicket.Component.internalRender(Component.java:2394)
> >        at org.apache.wicket.Component.render(Component.java:2322)
> >        at org.apache.wicket.Page.renderPage(Page.java:1120)
> >        at
> org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
> >        at
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:218)
> >        at
> org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:139)
> >        at
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:718)
> >        at
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:63)
> >        at
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212)
> >        at
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:253)
> >        at
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:138)
> >        at
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:194)
> >        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:440)
> >        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:926)
> >        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
> >        at
> org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
> >        at
> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
> >        at
> org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
> >        at
> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
> > Caused by: java.lang.NullPointerException
> >        at
> java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:768)
> >        at
> org.apache.wicket.application.DefaultClassResolver.resolveClass(DefaultClassResolver.java:60)
> >        at
> org.apache.wicket.util.lang.WicketObjects.resolveClass(WicketObjects.java:72)
> >        at
> org.apache.wicket.markup.html.link.BookmarkablePageLink.getPageClass(BookmarkablePageLink.java:110)
> >        at
> com.netdesign.ccadmin.WicketApplication$1.onInstantiation(WicketApplication.java:61)
> >        at
> org.apache.wicket.application.ComponentInstantiationListenerCollection$1.notify(ComponentInstantiationListenerCollection.java:36)
> >        at
> org.apache.wicket.application.ComponentInstantiationListenerCollection$1.notify(ComponentInstantiationListenerCollection.java:34)
> >        at
> org.apache.wicket.util.listener.ListenerCollection.notify(ListenerCollection.java:79)
> >        at
> org.apache.wicket.application.ComponentInstantiationListenerCollection.onInstantiation(ComponentInstantiationListenerCollection.java:32)
> >        at org.apache.wicket.Component.<init>(Component.java:676)
> >        at
> org.apache.wicket.MarkupContainer.<init>(MarkupContainer.java:115)
> >        at
> org.apache.wicket.markup.html.WebMarkupContainer.<init>(WebMarkupContainer.java:49)
> >        at
> org.apache.wicket.markup.html.link.AbstractLink.<init>(AbstractLink.java:57)
> >        at
> org.apache.wicket.markup.html.link.AbstractLink.<init>(AbstractLink.java:44)
> >        at org.apache.wicket.markup.html.link.Link.<init>(Link.java:103)
> >        at
> org.apache.wicket.markup.html.link.BookmarkablePageLink.<init>(BookmarkablePageLink.java:87)
> >        at
> org.apache.wicket.markup.resolver.AutoLinkResolver$AutolinkBookmarkablePageLink.<init>(AutoLinkResolver.java:167)
> >        at
> org.apache.wicket.markup.resolver.AutoLinkResolver$AnchorResolverDelegate.newAutoComponent(AutoLinkResolver.java:428)
> >        at
> org.apache.wicket.markup.resolver.AutoLinkResolver.resolveAutomaticLink(AutoLinkResolver.java:865)
> >        at
> org.apache.wicket.markup.resolver.AutoLinkResolver.resolve(AutoLinkResolver.java:797)
> >        at
> org.apache.wicket.markup.resolver.ComponentResolvers.resolveByApplication(ComponentResolvers.java:83)
> >        at
> org.apache.wicket.markup.resolver.ComponentResolvers.resolve(ComponentResolvers.java:59)
> >        at
> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1411)
> >        at
> org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1553)
> >        at
> org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1528)
> >        at
> org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1482)
> >        at
> org.apache.wicket.markup.html.panel.DefaultMarkupSourcingStrategy.onComponentTagBody(DefaultMarkupSourcingStrategy.java:70)
> >        at
> org.apache.wicket.Component.internalRenderComponent(Component.java:2563)
> >        ... 33 more
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>


-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com <http://jweekend.com/>

Reply via email to