Dan Haywood created ISIS-1076:
---------------------------------

             Summary: MetaModelValidation error page (MmvPage) is no longer 
shown...
                 Key: ISIS-1076
                 URL: https://issues.apache.org/jira/browse/ISIS-1076
             Project: Isis
          Issue Type: Bug
          Components: Core: Viewer: Wicket
            Reporter: Dan Haywood
            Assignee: Dan Haywood
             Fix For: core-1.9.0


Somewhere in 1.8.0-SNAPSHOT we've broken the MmvErrorPage.

It works fine in 1.8.0.

If I run my app with metamodel validation errors, then (rather than being 
directed to the MmvErrorPage) I get through to 

http://localhost:8080/wicket/wicket/bookmarkable/org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage

then, because the guice injector stuff in IsisWicketApplication never would 
have completed (ObjectReflectorDefault#init having thrown an exceptoin) I get 
an NPE because there is no PageClassRegistry.

So for some reason we're not detecting the fact that there were MMV errors 
anymore, and are blithely attempting to continue onto the login.

{code}
Unexpected RuntimeException

Last cause: null
WicketMessage: Can't instantiate page using constructor 'public 
org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage(org.apache.wicket.request.mapper.parameter.PageParameters)'
 and argument ''. An exception has been thrown during construction!

Stacktrace

Root cause:

java.lang.NullPointerException
     at 
org.apache.isis.viewer.wicket.ui.pages.accmngt.AccountManagementPageAbstract.<init>(AccountManagementPageAbstract.java:102)
     at 
org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage.<init>(WicketSignInPage.java:51)
     at 
org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage.<init>(WicketSignInPage.java:47)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
     at 
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:171)
     at 
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:76)
     at 
org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:133)
     at 
org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:268)
     at 
org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
     at 
org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at 
org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:107)
     at 
org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:228)
     at 
org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
     at 
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
     at 
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at 
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
     at 
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
     at 
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
     at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
     at 
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
     at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
     at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
     at 
org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)
     at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
     at 
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
     at 
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
     at 
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
     at 
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
     at 
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
     at 
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
     at 
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
     at 
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
     at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
     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:766)
     at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
     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:928)
     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)

Complete stack:

org.apache.wicket.WicketRuntimeException: Can't instantiate page using 
constructor 'public 
org.apache.isis.viewer.wicket.ui.pages.login.WicketSignInPage(org.apache.wicket.request.mapper.parameter.PageParameters)'
 and argument ''. An exception has been thrown during construction!
     at 
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:194)
     at 
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:76)
     at 
org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:133)
     at 
org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:268)
     at 
org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
     at 
org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at 
org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:107)
     at 
org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:228)
     at 
org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
     at 
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
     at 
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at 
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
     at 
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
     at 
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
     at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)

java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
     at 
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:171)
     at 
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:76)
     at 
org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:133)
     at 
org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:268)
     at 
org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
     at 
org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at 
org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:107)
     at 
org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:228)
     at 
org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
     at 
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
     at 
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at 
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
     at 
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
     at 
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
     at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
{code}






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to