You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by "Martin Grigorov (JIRA)" <ji...@apache.org> on 2015/03/07 23:08:38 UTC

[jira] [Resolved] (ISIS-1076) MetaModelValidation error page (MmvPage) is no longer shown...

     [ https://issues.apache.org/jira/browse/ISIS-1076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Grigorov resolved ISIS-1076.
-----------------------------------
    Resolution: Fixed

> 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: Martin Grigorov
>             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)