Upload schlägt 'sporadisch' fehl

cancel
Showing results for 
Search instead for 
Did you mean: 
jumpfunky
Member II

Upload schlägt 'sporadisch' fehl

Hallo zusammen,

ein Nutzer hat mir berichtet, dass der Upload von Dateien immer mal wieder fehlschlägt. Er erhalte dann einfach nur die Fehlermeldung:
Status: 0/1 uploaded (1 failed)

Ich habe in den Logs nachgeschaut und finde dort folgende Exception:


14.06.2011 10:47:12 org.apache.catalina.core.StandardWrapperValve invoke
SCHWERWIEGEND: Servlet.service() for servlet apiServlet threw exception
java.lang.NullPointerException
   at org.apache.catalina.loader.WebappClassLoader.findResourceInternal(WebappClassLoader.java:2672)
   at org.apache.catalina.loader.WebappClassLoader.findResource(WebappClassLoader.java:1088)
   at org.apache.catalina.loader.WebappClassLoader.getResource(WebappClassLoader.java:1224)
   at org.springframework.extensions.webscripts.ClassPathStoreResourceResolver.getResource(ClassPathStoreResourceResolver.java:73)
   at org.springframework.extensions.webscripts.ClassPathStore.getDocumentResource(ClassPathStore.java:384)
   at org.springframework.extensions.webscripts.ClassPathStore.hasDocument(ClassPathStore.java:301)
   at org.springframework.extensions.webscripts.ClassPathStore$ClassPathTemplateLoader.findTemplateSource(ClassPathStore.java:838)
   at freemarker.cache.MultiTemplateLoader.findTemplateSource(MultiTemplateLoader.java:111)
   at freemarker.cache.TemplateCache.acquireTemplateSource(TemplateCache.java:600)
   at freemarker.cache.TemplateCache.findTemplateSource(TemplateCache.java:590)
   at freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:347)
   at freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:235)
   at freemarker.template.Configuration.getTemplate(Configuration.java:487)
   at freemarker.template.Configuration.getTemplate(Configuration.java:452)
   at org.alfresco.repo.web.scripts.RepositoryTemplateProcessor.hasTemplate(RepositoryTemplateProcessor.java:148)
   at org.springframework.extensions.webscripts.TemplateProcessorRegistry.findValidTemplatePath(TemplateProcessorRegistry.java:214)
   at org.springframework.extensions.webscripts.AbstractWebScript.getScriptStatusTemplate(AbstractWebScript.java:846)
   at org.springframework.extensions.webscripts.AbstractWebScript.getStatusTemplate(AbstractWebScript.java:802)
   at org.springframework.extensions.webscripts.AbstractWebScript$1.getStatusTemplate(AbstractWebScript.java:763)
   at org.springframework.extensions.webscripts.WebScriptException.getStatusTemplate(WebScriptException.java:139)
   at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:221)
   at org.springframework.extensions.webscripts.servlet.WebScriptServlet.service(WebScriptServlet.java:116)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   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.StandardHostValve.invoke(StandardHostValve.java:127)
   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.Http11AprProcessor.process(Http11AprProcessor.java:859)
   at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
   at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
   at java.lang.Thread.run(Thread.java:619)
14.06.2011 10:47:12 org.apache.catalina.core.ApplicationDispatcher invoke
SCHWERWIEGEND: Servlet.service() for servlet jsp threw exception
java.lang.NullPointerException
   at org.apache.catalina.loader.WebappClassLoader.findResourceInternal(WebappClassLoader.java:2672)
   at org.apache.catalina.loader.WebappClassLoader.findResource(WebappClassLoader.java:1088)
   at org.apache.catalina.loader.WebappClassLoader.getResourceAsStream(WebappClassLoader.java:1310)
   at org.apache.jasper.servlet.JasperLoader.getResourceAsStream(JasperLoader.java:144)
   at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:193)
   at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:178)
   at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:122)
   at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:178)
   at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:2391)
   at org.eclipse.jdt.internal.compiler.lookup.Scope.getPackage(Scope.java:2090)
   at org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference.getTypeBinding(QualifiedTypeReference.java:69)
   at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:163)
   at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType(TypeReference.java:114)
   at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype(ClassScope.java:1121)
   at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass(ClassScope.java:835)
   at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy(ClassScope.java:960)
   at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierarchy(CompilationUnitScope.java:290)
   at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:218)
   at org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:603)
   at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:357)
   at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:371)
   at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429)
   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
   at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589)
   at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
   at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
   at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:438)
   at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
   at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
   at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:415)
   at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:270)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
   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.Http11AprProcessor.process(Http11AprProcessor.java:859)
   at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
   at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
   at java.lang.Thread.run(Thread.java:619)
14.06.2011 10:47:12 org.apache.catalina.core.StandardHostValve custom
SCHWERWIEGEND: Exception Processing ErrorPage[exceptionType=java.lang.Exception, location=/jsp/error.jsp]
org.apache.jasper.JasperException: Unable to compile class for JSP
   at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:597)
   at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
   at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
   at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
   at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:438)
   at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
   at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
   at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:415)
   at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:270)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
   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.Http11AprProcessor.process(Http11AprProcessor.java:859)
   at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
   at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
   at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
   at org.apache.catalina.loader.WebappClassLoader.findResourceInternal(WebappClassLoader.java:2672)
   at org.apache.catalina.loader.WebappClassLoader.findResource(WebappClassLoader.java:1088)
   at org.apache.catalina.loader.WebappClassLoader.getResourceAsStream(WebappClassLoader.java:1310)
   at org.apache.jasper.servlet.JasperLoader.getResourceAsStream(JasperLoader.java:144)
   at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:193)
   at org.apache.jasper.compiler.JDTCompiler$1.findType(JDTCompiler.java:178)
   at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:122)
   at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:178)
   at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:2391)
   at org.eclipse.jdt.internal.compiler.lookup.Scope.getPackage(Scope.java:2090)
   at org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference.getTypeBinding(QualifiedTypeReference.java:69)
   at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:163)
   at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType(TypeReference.java:114)
   at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype(ClassScope.java:1121)
   at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass(ClassScope.java:835)
   at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy(ClassScope.java:960)
   at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierarchy(CompilationUnitScope.java:290)
   at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:218)
   at org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:603)
   at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:357)
   at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:371)
   at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429)
   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:349)
   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
   at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
   at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589)

Leider wird mir aus dieser Exception der Grund dafür nicht ersichtlich.
Die Datei, die er versucht hochzuladen, kann ich unter meinem Account übrigens Problemlos hochladen.

Ich würde mich freuen, wenn mir jemand helfen könnte.

Viele Grüße
Thorsten
1 Reply
afaust
Master

Re: Upload schlägt 'sporadisch' fehl

Hallo Thorsten,

die Exception aus dem Log sieht mir stark nach einem Fehler bei der Fehlerberichterstattung aus. D.h. der Upload selber erzeugt einen technisch/fachlichen Fehler, welcher dann in einem StatusTemplate ausgegeben werden soll. Beim Laden dieses StatusTemplate kommt es dann in Tomcat-Innereien zu einem Fehler, welcher hier dargestellt wird.

Leider liegt mir von Tomcat z.Zt. kein Source Code vor - es wäre hier die Frage, mit welcher Tomcat Version du arbeitest.
Hast du die Möglichkeit / Erfahrung, mittels Remote Debugging rauszufinden, wie der Aufruf in folgender Zeile aussieht (Parameter-Werte etc.)?

org.springframework.extensions.webscripts.ClassPathStoreResourceResolver.getResource(ClassPathStoreResourceResolver.java:73)

Auf welchem OS läuft der Server? Sind alle Filesystem-Berechtigungen für den Service Account des Servers korrekt gesetzt (dass beim dynamischen Kompilieren evtl. Probleme machen), d.h. also mind. lesend auf webapps/shared und drunter sowie mind. schreibend auf temp/work? Wurde Alfresco vollständig/original verwendet oder ggf. angepasst (und vllt. zuviel entfernt)?

Es wird hier wahrscheinlich schwierig werden, die Lösung remote zu finden - es werden eine Reihe Stupser werden, mit der dann hoffentlich das Problem isoliert werden kann.

Gruß
Axel Faust