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)