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]