GlennRicaud / data-toolbox-app

Apache License 2.0
11 stars 1 forks source link

Can't load a dump #53

Closed alansemenov closed 3 years ago

alansemenov commented 3 years ago

As of recently we noticed that the "Load dump" icon remains disabled in the UI when a dump is selected (see below). This happens with dumps from 7.6 and 7.7 (didn't check earlier versions).

image

NPE in the log appears when a dump is selected:

2021-06-08 22:20:03,815 ERROR s.r.enonic.datatoolbox.RcdScriptBean - Error while reading dump version
java.lang.NullPointerException: null
    at systems.rcd.fwk.core.script.js.impl.RcdSimpleJavascriptService.instEval(RcdSimpleJavascriptService.java:19)
    at systems.rcd.fwk.core.script.js.RcdJavascriptService.eval(RcdJavascriptService.java:11)
    at systems.rcd.enonic.datatoolbox.RcdDumpScriptBean.getDumpInfo(RcdDumpScriptBean.java:200)
    at systems.rcd.enonic.datatoolbox.RcdDumpScriptBean.lambda$list$0(RcdDumpScriptBean.java:111)
    at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
    at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
    at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)
    at systems.rcd.fwk.core.io.file.impl.RcdNioFileService.instListSubPaths(RcdNioFileService.java:25)
    at systems.rcd.fwk.core.io.file.RcdFileService.listSubPaths(RcdFileService.java:14)
    at systems.rcd.enonic.datatoolbox.RcdDumpScriptBean.lambda$list$1(RcdDumpScriptBean.java:105)
    at systems.rcd.enonic.datatoolbox.RcdScriptBean.runSafely(RcdScriptBean.java:46)
    at systems.rcd.enonic.datatoolbox.RcdScriptBean.runSafely(RcdScriptBean.java:39)
    at systems.rcd.enonic.datatoolbox.RcdDumpScriptBean.list(RcdDumpScriptBean.java:100)
    at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$278$70$dump_list/0x0000000800e11840.L:1#get(systems.rcd.enonic.datatoolbox:/services/dump-list/dump-list.js:6)
    at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:655)
    at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:513)
    at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:527)
    at jdk.scripting.nashorn/jdk.nashorn.api.scripting.ScriptObjectMirror.call(ScriptObjectMirror.java:120)
    at com.enonic.xp.script.impl.value.FunctionScriptValue.call(FunctionScriptValue.java:36)
    at com.enonic.xp.script.impl.executor.ScriptExportsImpl.executeMethod(ScriptExportsImpl.java:59)
    at com.enonic.xp.portal.impl.controller.ControllerScriptImpl.doExecute(ControllerScriptImpl.java:71)
    at com.enonic.xp.portal.impl.controller.ControllerScriptImpl.lambda$execute$0(ControllerScriptImpl.java:36)
    at com.enonic.xp.trace.Tracer.traceEx(Tracer.java:72)
    at com.enonic.xp.trace.Tracer.trace(Tracer.java:51)
    at com.enonic.xp.trace.Tracer.trace(Tracer.java:98)
    at com.enonic.xp.portal.impl.controller.ControllerScriptImpl.execute(ControllerScriptImpl.java:36)
    at com.enonic.xp.portal.impl.handler.service.ServiceHandlerWorker.execute(ServiceHandlerWorker.java:106)
    at com.enonic.xp.portal.impl.handler.service.ServiceHandler.doHandle(ServiceHandler.java:64)
    at com.enonic.xp.portal.impl.handler.service.ServiceHandler.doHandle(ServiceHandler.java:23)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:66)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.portal.handler.BasePortalHandler.doHandle(BasePortalHandler.java:46)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:66)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:75)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.impl.trace.TraceWebFilter.doHandle(TraceWebFilter.java:38)
    at com.enonic.xp.web.handler.BaseWebHandler.handle(BaseWebHandler.java:66)
    at com.enonic.xp.web.impl.handler.WebHandlerChainImpl.handle(WebHandlerChainImpl.java:30)
    at com.enonic.xp.web.impl.handler.WebDispatcherImpl.dispatch(WebDispatcherImpl.java:44)
    at com.enonic.xp.web.impl.handler.WebDispatcherServlet.doHandle(WebDispatcherServlet.java:142)
    at com.enonic.xp.web.impl.handler.WebDispatcherServlet.service(WebDispatcherServlet.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    at com.enonic.xp.web.impl.dispatch.mapping.ServletDefinitionImpl.service(ServletDefinitionImpl.java:40)
    at com.enonic.xp.web.impl.dispatch.pipeline.ServletPipelineImpl.service(ServletPipelineImpl.java:38)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:51)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:33)
    at com.enonic.xp.portal.impl.idprovider.IdProviderFilter.doHandle(IdProviderFilter.java:46)
    at com.enonic.xp.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:31)
    at com.enonic.xp.web.filter.BaseWebFilter.doFilter(BaseWebFilter.java:33)
    at com.enonic.xp.web.impl.dispatch.mapping.FilterDefinitionImpl.doFilter(FilterDefinitionImpl.java:41)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:33)
    at com.enonic.xp.web.impl.context.ContextFilter.lambda$doHandle$0(ContextFilter.java:34)
    at com.enonic.xp.context.ContextImpl.callWith(ContextImpl.java:102)
    at com.enonic.xp.web.impl.context.ContextFilter.doHandle(ContextFilter.java:33)
    at com.enonic.xp.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:31)
    at com.enonic.xp.web.filter.BaseWebFilter.doFilter(BaseWebFilter.java:33)
    at com.enonic.xp.web.impl.dispatch.mapping.FilterDefinitionImpl.doFilter(FilterDefinitionImpl.java:41)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:33)
    at com.enonic.xp.web.vhost.impl.VirtualHostFilter.doHandle(VirtualHostFilter.java:73)
    at com.enonic.xp.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:31)
    at com.enonic.xp.web.filter.BaseWebFilter.doFilter(BaseWebFilter.java:33)
    at com.enonic.xp.web.impl.dispatch.mapping.FilterDefinitionImpl.doFilter(FilterDefinitionImpl.java:41)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:33)
    at com.enonic.xp.web.impl.dos.DosFilterWrapper.doFilter(DosFilterWrapper.java:65)
    at com.enonic.xp.web.impl.dispatch.mapping.FilterDefinitionImpl.doFilter(FilterDefinitionImpl.java:41)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:33)
    at org.eclipse.jetty.servlets.HeaderFilter.doFilter(HeaderFilter.java:117)
    at com.enonic.xp.web.impl.header.HeaderFilterWrapper.doHandle(HeaderFilterWrapper.java:51)
    at com.enonic.xp.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:31)
    at com.enonic.xp.web.filter.BaseWebFilter.doFilter(BaseWebFilter.java:33)
    at com.enonic.xp.web.impl.dispatch.mapping.FilterDefinitionImpl.doFilter(FilterDefinitionImpl.java:41)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterChainImpl.doFilter(FilterChainImpl.java:33)
    at com.enonic.xp.web.impl.dispatch.pipeline.FilterPipelineImpl.filter(FilterPipelineImpl.java:37)
    at com.enonic.xp.web.impl.dispatch.DispatchServletImpl.service(DispatchServletImpl.java:51)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
GlennRicaud commented 3 years ago

No problem with XP 7.6.1 and DT 5.0.13 I will try with other versions of XP

GlennRicaud commented 3 years ago

Reproduced with XP 7.7.0-RC3 but as mentioned above it is working with XP 7.6.1

GlennRicaud commented 3 years ago

Fixed in DT 5.0.14