Uploaded image for project: 'Magnolia UI'
  1. Magnolia UI
  2. MGNLUI-185

Content workbench fails when root is different than "/"

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Blocker
    • 5.0
    • 5.0
    • content app
    • None

    Description

      If the workbench's root is set to a value different than "/", sub-app start fails with the following exception:

      2012-11-19 13:06:02,384 WARN  info.magnolia.ui.framework.event.SimpleEventBus   : Exception caught when dispatching event: javax.jcr.PathNotFoundException: /demo-project/demo-project
      info.magnolia.jcr.RuntimeRepositoryException: javax.jcr.PathNotFoundException: /demo-project/demo-project
      	at info.magnolia.ui.admincentral.tree.container.HierarchicalJcrContainer.isRoot(HierarchicalJcrContainer.java:150)
      	at info.magnolia.ui.admincentral.tree.view.WorkbenchTreeTable.select(WorkbenchTreeTable.java:78)
      	at info.magnolia.ui.admincentral.tree.view.TreeViewImpl.select(TreeViewImpl.java:143)
      	at info.magnolia.ui.admincentral.content.view.ContentPresenter.initContentView(ContentPresenter.java:97)
      	at info.magnolia.ui.admincentral.workbench.ContentWorkbenchPresenter.start(ContentWorkbenchPresenter.java:125)
      	at info.magnolia.ui.admincentral.app.content.AbstractContentSubApp.start(AbstractContentSubApp.java:104)
      	at info.magnolia.ui.admincentral.app.simple.AppControllerImpl$AppContextImpl.startSubApp(AppControllerImpl.java:521)
      	at info.magnolia.ui.admincentral.app.simple.AppControllerImpl$AppContextImpl.openSubApp(AppControllerImpl.java:491)
      	at info.magnolia.ui.framework.app.AbstractApp.start(AbstractApp.java:59)
      	at info.magnolia.ui.admincentral.app.simple.AppControllerImpl$AppContextImpl.start(AppControllerImpl.java:415)
      	at info.magnolia.ui.admincentral.app.simple.AppControllerImpl.doStartIfNotAlreadyRunning(AppControllerImpl.java:196)
      	at info.magnolia.ui.admincentral.app.simple.AppControllerImpl.onLocationChanged(AppControllerImpl.java:248)
      	at info.magnolia.ui.framework.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:64)
      	at info.magnolia.ui.framework.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:42)
      	at info.magnolia.ui.framework.event.SimpleEventBus.fireEvent(SimpleEventBus.java:76)
      	at info.magnolia.ui.framework.location.LocationController.goToWithoutChecks(LocationController.java:103)
      	at info.magnolia.ui.framework.location.LocationController.goTo(LocationController.java:97)
      	at info.magnolia.ui.admincentral.MagnoliaShell$2.invoke(MagnoliaShell.java:122)
      	at org.vaadin.rpc.ServerSideProxy.receiveFromClient(ServerSideProxy.java:91)
      	at org.vaadin.rpc.ServerSideProxy.changeVariables(ServerSideProxy.java:282)
      	at info.magnolia.ui.vaadin.magnoliashell.BaseMagnoliaShell.changeVariables(BaseMagnoliaShell.java:252)
      	at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.changeVariables(AbstractCommunicationManager.java:1460)
      	at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.handleVariableBurst(AbstractCommunicationManager.java:1404)
      	at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.handleVariables(AbstractCommunicationManager.java:1329)
      	at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.doHandleUidlRequest(AbstractCommunicationManager.java:761)
      	at com.vaadin.terminal.gwt.server.CommunicationManager.handleUidlRequest(CommunicationManager.java:323)
      	at info.magnolia.ui.vaadin.integration.servlet.MultipleBrowserWindowsApplicationServlet$CustomCommunicationManager.handleUidlRequest(MultipleBrowserWindowsApplicationServlet.java:283)
      	at com.vaadin.terminal.gwt.server.AbstractApplicationServlet.service(AbstractApplicationServlet.java:501)
      	at info.magnolia.ui.vaadin.integration.servlet.MagnoliaIcePushServlet.service(MagnoliaIcePushServlet.java:110)
      	at info.magnolia.ui.vaadin.integration.servlet.MultipleBrowserWindowsApplicationServlet.service(MultipleBrowserWindowsApplicationServlet.java:144)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      	at info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:123)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:67)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:70)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58)
      	at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:66)
      	at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:153)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:76)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:86)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:60)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:86)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:93)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.module.templatingkit.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:99)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:75)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:93)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.module.devicedetection.filter.DeviceDetectionFilter.doFilter(DeviceDetectionFilter.java:73)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:102)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:131)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:67)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:108)
      	at info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:67)
      	at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:108)
      	at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:94)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      	at org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:191)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)
      	at org.apache.catalina.core.StandardHostValve.__invoke(StandardHostValve.java:127)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
      	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
      	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
      	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
      	at java.lang.Thread.run(Thread.java:680)
      Caused by: javax.jcr.PathNotFoundException: /demo-project/demo-project
      	at org.apache.jackrabbit.core.ItemManager.getItem(ItemManager.java:552)
      	at org.apache.jackrabbit.core.session.SessionItemOperation$4.perform(SessionItemOperation.java:97)
      	at org.apache.jackrabbit.core.session.SessionItemOperation$4.perform(SessionItemOperation.java:93)
      	at org.apache.jackrabbit.core.session.SessionItemOperation.perform(SessionItemOperation.java:187)
      	at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216)
      	at org.apache.jackrabbit.core.SessionImpl.perform(SessionImpl.java:361)
      	at org.apache.jackrabbit.core.SessionImpl.getItem(SessionImpl.java:786)
      	at info.magnolia.jcr.wrapper.DelegateSessionWrapper.getItem(DelegateSessionWrapper.java:154)
      	at info.magnolia.jcr.wrapper.DelegateSessionWrapper.getItem(DelegateSessionWrapper.java:154)
      	at info.magnolia.ui.admincentral.tree.container.HierarchicalJcrContainer.getItemByPath(HierarchicalJcrContainer.java:244)
      	at info.magnolia.ui.admincentral.tree.container.HierarchicalJcrContainer.isRoot(HierarchicalJcrContainer.java:147)
      	... 114 more
      

      It doesn't matter whether the root is set by JCR or using configuration-by-code.

      Checklists

        Acceptance criteria

        Attachments

          Activity

            People

              fgrilli Federico Grilli
              jchocholacek Jozef Chocholacek
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Checklists

                  Bug DoR
                  Task DoD