Uploaded image for project: 'Magnolia Log Tools'
  1. Magnolia Log Tools
  2. LOGTOOLS-21

Sub app fails on startup if no files with .log-ending are contained in root of logs directory

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: Neutral
    • Resolution: Unresolved
    • Affects Version/s: 1.0.3, 1.1.2
    • Fix Version/s: None
    • Labels:
    • Documentation update required:
      Yes

      Description

      If there are no files with the ending ".log" in the root of the "logs" directory, the log tools app breaks when opening. Looks like the list view is not happy when row count is zero (see error message below).

      2016-09-28 15:44:08,430 ERROR agnolia.ui.framework.app.AppInstanceControllerImpl: Sub-app list failed to start: More than zero rows must be shown.
      java.lang.IllegalArgumentException: More than zero rows must be shown.
      at com.vaadin.ui.Grid.setHeightByRows(Grid.java:3704)
      at info.magnolia.log.tools.viewer.LogListViewImpl.start(LogListViewImpl.java:105)
      at info.magnolia.log.tools.viewer.LogListSubApp.start(LogListSubApp.java:101)
      at info.magnolia.log.tools.viewer.LogListSubApp.start(LogListSubApp.java:77)
      at info.magnolia.ui.framework.app.AppInstanceControllerImpl.startSubApp(AppInstanceControllerImpl.java:426)
      at info.magnolia.ui.framework.app.AppInstanceControllerImpl.openSubApp(AppInstanceControllerImpl.java:382)
      at info.magnolia.ui.framework.app.BaseApp.start(BaseApp.java:71)
      at info.magnolia.log.tools.LogBaseApp.start(LogBaseApp.java:57)
      at info.magnolia.ui.framework.app.AppInstanceControllerImpl.start(AppInstanceControllerImpl.java:242)
      at info.magnolia.ui.framework.app.AppControllerImpl.doStartIfNotAlreadyRunning(AppControllerImpl.java:258)
      at info.magnolia.ui.framework.app.AppControllerImpl.onLocationChanged(AppControllerImpl.java:339)
      at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:64)
      at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:42)
      at info.magnolia.event.SimpleEventBus.fireEvent(SimpleEventBus.java:78)
      at info.magnolia.ui.api.location.LocationController.goToWithoutChecks(LocationController.java:103)
      at info.magnolia.ui.api.location.LocationController.goTo(LocationController.java:97)
      at info.magnolia.ui.framework.app.AppControllerImpl.onLocationChanged(AppControllerImpl.java:330)
      at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:64)
      at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:42)
      at info.magnolia.event.SimpleEventBus.fireEvent(SimpleEventBus.java:78)
      at info.magnolia.ui.api.location.LocationController.goToWithoutChecks(LocationController.java:103)
      at info.magnolia.ui.api.location.LocationController.goTo(LocationController.java:97)
      at info.magnolia.ui.api.location.LocationHistoryHandler.handleFragment(LocationHistoryHandler.java:120)
      at info.magnolia.ui.api.location.LocationHistoryHandler.access$100(LocationHistoryHandler.java:49)
      at info.magnolia.ui.api.location.LocationHistoryHandler$1.onFragmentChanged(LocationHistoryHandler.java:79)
      at info.magnolia.ui.api.shell.FragmentChangedEvent.dispatch(FragmentChangedEvent.java:55)
      at info.magnolia.ui.api.shell.FragmentChangedEvent.dispatch(FragmentChangedEvent.java:41)
      at info.magnolia.event.EventHandlerCollection.dispatch(EventHandlerCollection.java:72)
      at info.magnolia.ui.framework.shell.ShellImpl$2.onFragmentChanged(ShellImpl.java:130)
      at info.magnolia.ui.vaadin.magnoliashell.MagnoliaShell.notifyOnFragmentChanged(MagnoliaShell.java:260)
      at info.magnolia.ui.framework.shell.ShellImpl.goToApp(ShellImpl.java:262)
      at info.magnolia.ui.framework.shell.ShellImpl.access$500(ShellImpl.java:78)
      at info.magnolia.ui.framework.shell.ShellImpl$2.goToApp(ShellImpl.java:150)
      at info.magnolia.ui.vaadin.magnoliashell.MagnoliaShell.goToApp(MagnoliaShell.java:130)
      at info.magnolia.ui.vaadin.magnoliashell.rpc.MagnoliaShellRpcDelegate.activateApp(MagnoliaShellRpcDelegate.java:68)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:498)
      at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:168)
      at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:118)
      at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:291)
      at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:184)
      at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:92)
      at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41)
      at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1408)
      at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:350)
      at info.magnolia.ui.admincentral.AdmincentralVaadinServlet.service(AdmincentralVaadinServlet.java:131)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
      at info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:148)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:69)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58)
      at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:67)
      at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:174)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:74)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:84)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:84)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:94)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.module.site.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:119)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.multisite.filters.MultiSiteFilter.doFilter(MultiSiteFilter.java:106)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:73)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:127)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.enterprise.registration.RegistrationFilter.doFilter(RegistrationFilter.java:64)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.personalization.preview.filter.PreviewFilter.doFilter(PreviewFilter.java:92)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
      at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:155)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:128)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
      at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
      at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:107)
      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:241)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
      at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
      at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      at java.lang.Thread.run(Thread.java:745)

        Checklists

        Acceptance criteria

          Attachments

            Activity

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              lfischer Lars Fischer
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Dates

                Created:
                Updated:

                  Checklists

                  Bug DoR
                  DoD