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]

Reply via email to