-
Bug
-
Resolution: Not A Defect
-
Blocker
-
None
-
Powered by SuggestiMate
javax.servlet.ServletException: org.apache.commons.jelly.JellyTagException: vfs:/content/jenkins.war/WEB-INF/lib/jenkins-core-1.525.jar/hudson/model/AbstractBuild/index.jelly:67:61: <st:include> No page found 'digest.jelly' for class hudson.maven.MavenModuleSetBuild
at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:117)
at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:673)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:381)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
[JENKINS-19045] No page found 'digest.jelly'
This bug is related to core not jboss plugin. I know the component name is a bit confusing
I have this issue on Jenkins 1.526. I created a simple Java HelloWorld build job taking code from a Subversion repository. It fails with the exception below.
The Tomcat container is very old (5.0.19) because I'm forced to run on a SLES 9.0 machine. I have configured it to run with Java 1.6 so Jenkins seems to run fine, but won't build any jobs. Any help is much appreciated.
javax.servlet.ServletException: file:/usr/share/tomcat/work/Catalina/localhost/jenkins/loader/hudson/model/AbstractBuild/index.jelly:67:61: <st:include> No page found 'digest.jelly' for class hudson.model.FreeStyleBuild
at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:117)
at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:673)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:381)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:586)
at org.kohsuke.stapler.Stapler.service(Stapler.java:217)
Is it still reproduced with 1.527 ?
Could you reproduce this problem after deploying jenkins to other tomcat?
Did you tried to clean tomcat's cache?
I can reproduce in 1.527, same exception. For me it works in 1.400, 1.470, 1.490, 1.495 and fails in 1.500, 1.510, 1.513 and 1.527, so it changes somewhere between 1.495 and 1.500.
It still fails after clearing tomcat/work/Catalina/localhost - is that the cache that you were referring to?
>Could you reproduce this problem after deploying jenkins to other tomcat?
Jenkins works fine on Tomcat with all the latest versions and there is nothing special about the build I'm running, it's a Hello World knocked up in two minutes in Eclipse with an Ant script to build. For me this problem is most probably related to having to use older versions of Tomcat, SLES and hence Jenkins, but I was hoping there might be a workaround so that I could run the up to date Jenkins build.
it works for me in 523, but fails in 524. Can you recheck this versions Martyn?
I'm afraid it fails in both 523 and 524 for me, I've just re-checked.
I've also discovered over the last few days that a much more complicated job works fine on the same system. This one checks out from Git though, and the simple Hello World that fails uses Subversion, so could it be a Subversion issue? I've been using version 1.45 of the Subversion plugin throughout.
I have the same problem with 528 when I try to access an old successful build (see http://tsphp.tutteli.ch/jenkins/job/TSPHP/lastSuccessfulBuild/)
btw I use git and not SVN
Furthermore all my builds fail with the following exception: --> Maven Plugin was deactivated
FATAL: hudson/plugins/checkstyle/CheckStyleMavenResultAction
java.lang.NoClassDefFoundError: hudson/plugins/checkstyle/CheckStyleMavenResultAction
(see http://tsphp.tutteli.ch/jenkins/job/TSPHP/lastFailedBuild/console)
Are there any workaround available till a new update is released with a fix?
I have just updated to 529, the problem remains.
I have discovered that the bug also shows up for old unsuccessful builds (see http://tsphp.tutteli.ch/jenkins/job/TSPHP-parser/96/)
However, for whatever reason some builds (just a few) show up fine:
- http://tsphp.tutteli.ch/jenkins/job/TSPHP-parser/100/
- http://tsphp.tutteli.ch/jenkins/job/TSPHP-typechecker/96/
In addition the bug only occurs on the overview. If I navigate to some details (like console) then everything is fine.
Hope this additional info helps to locate the bug.
Diagnosis of this:
(11:36:11 AM) KostyaSha: JENKINS-19045 (11:36:14 AM) jenkins-admin: JENKINS-19045:No page found 'digest.jelly' (Open) http://jenkins-ci.org/issue/19045 (11:36:18 AM) KostyaSha: how debug such jelly errors? (11:36:51 AM) kohsuke: The error is reported on AbstractBuild/index.jelly:67 so let's see what's in there (11:37:17 AM) kohsuke: <st:include it="${set}" page="digest.jelly" /> (11:37:33 AM) kohsuke: So we can tell that the problem is because "set" is null. (11:37:41 AM) kohsuke: That's why it's trying to resolve from the current "it" object (11:37:56 AM) kohsuke: a few lines above you see: <j:set var="set" value="${it.changeSet}" /> (11:38:06 AM) kohsuke: so really the problem is that this method is returning null (11:38:42 AM) kohsuke: AbstractBuild.getChangeSet() says the return value is never supposed to be null (11:39:56 AM) kohsuke: and looking at the code base I'm not sure how this method can return null (11:41:34 AM) kohsuke: There's no changes in this code for quite some time, too (11:42:15 AM) kohsuke: Tomcat cache is unlikely related (11:42:46 AM) KostyaSha: No page found 'digest.jelly' for class hudson.maven.MavenModuleSetBuild (11:43:09 AM) KostyaSha: so it throws such error if some object is null? (11:43:28 AM) KostyaSha: i thought that file is really doesn't exist :( (11:43:40 AM) kohsuke: Jelly doesn't distinguish null argument from the absence of the attribute (11:43:53 AM) kohsuke: So <st:include it="${null}" page="digest.jelly" /> behaves like <st:include page="digest.jelly" /> (11:44:22 AM) kohsuke: the latter means include another page from the current "it" (the equivalent of 'this' in Java) object (11:44:38 AM) kohsuke: and in fact no such page exists, hence the error (11:47:45 AM) kohsuke: I do wonder what happens if an exception is thrown while evaulating JEXL (11:48:25 AM) kohsuke: Ah, that must be it (11:48:31 AM) kohsuke: Look at ExpressionFactory2.JexlExpression (11:48:41 AM) kohsuke: it reports an exception in the server console but returns null (11:49:01 AM) kohsuke: there we go: http://tsphp.tutteli.ch/jenkins/job/TSPHP-parser/96/changeSet
Bottom line: the problem is that AbstractBuild.getChangeSet() throws an exception, and the way we evaluate our JEXL is such that it swallows an exception and turns it into null (after leaving the stack trace on the server, which people can verify to check the root cause)
In case of rstoll's instance, the problem is as follows:
javax.servlet.ServletException: java.lang.NoClassDefFoundError: hudson/tasks/Mailer$UserProperty at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:735) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:799) at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:381) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:685) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:799) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:685) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:799) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:587) at org.kohsuke.stapler.Stapler.service(Stapler.java:218) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:248) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96) at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:64) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at winstone.RequestDispatcher.forward(RequestDispatcher.java:331) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:679) Caused by: java.lang.NoClassDefFoundError: hudson/tasks/Mailer$UserProperty at hudson.plugins.git.GitChangeLogParser.parseCommit(GitChangeLogParser.java:70) at hudson.plugins.git.GitChangeLogParser.parse(GitChangeLogParser.java:59) at hudson.plugins.git.GitChangeLogParser.parse(GitChangeLogParser.java:23) at hudson.model.AbstractBuild.calcChangeSet(AbstractBuild.java:922) at hudson.model.AbstractBuild.getChangeSet(AbstractBuild.java:896) at sun.reflect.GeneratedMethodAccessor317.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297) at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:201) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:685) ... 61 more Caused by: java.lang.ClassNotFoundException: hudson.tasks.Mailer$UserProperty at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1365) at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1315) at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1068) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) ... 73 more
[22:06] <KostyaSha> so Mailer$Property is a root of problem? [22:06] <kohsuke> Yes [22:07] <kohsuke> It's not exactly the "root" of the problem but one step closer to the root cause [22:07] <KostyaSha> Caused by: java.lang.NoClassDefFoundError: hudson/tasks/Mailer$UserProperty [22:07] <KostyaSha> at hudson.plugins.git.GitChangeLogParser.parseCommit(GitChangeLogParser.java:70) [22:07] <KostyaSha> so it related to git plugin [22:07] <KostyaSha> not exactly.. [22:07] <kohsuke> Well I'd say it's related more to the mailer plugin [22:07] <KostyaSha> i have no git plugin under hand... [22:08] <KostyaSha> ok, thanks, i think it will help for this issue [22:08] <kohsuke> Questions that we need to be asking is if the mail plugin is disabled/uninstalled/failed to start
@integer well, after your explanations I am not sure that it is the same problem. It might just be the same Exception which has swallowed another one. The link above is now misleading since I have changed a few things in the meantime. Please try one of these to see the error:
Could you check your server's jenkins.log? It should have the root of problem.
I get the following entry if I try to visit:
http://tsphp.tutteli.ch/jenkins/job/TSPHP/41/
2-Sep-2013 9:21:57 PM hudson.ExpressionFactory2$JexlExpression evaluate WARNING: Caught exception evaluating: it.changeSet in /jenkins/job/TSPHP/41/. Reason: java.lang.reflect.InvocationTargetException java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.commons.jexl.util.PropertyExecutor.execute(PropertyExecutor.java:125) at org.apache.commons.jexl.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:314) at org.apache.commons.jexl.parser.ASTArrayAccess.evaluateExpr(ASTArrayAccess.java:185) at org.apache.commons.jexl.parser.ASTIdentifier.execute(ASTIdentifier.java:75) at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83) at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57) at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:51) at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:80) at hudson.ExpressionFactory2$JexlExpression.evaluate(ExpressionFactory2.java:74) at org.apache.commons.jelly.tags.core.CoreTagLibrary$3.run(CoreTagLibrary.java:134) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98) at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91) at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105) at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98) at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91) at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99) at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99) at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105) at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119) at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105) at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81) at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63) at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53) at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:112) at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:674) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:799) at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:381) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:685) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:799) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:685) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:799) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:587) at org.kohsuke.stapler.Stapler.service(Stapler.java:218) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:248) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96) at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:64) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at winstone.RequestDispatcher.forward(RequestDispatcher.java:331) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:679) Caused by: java.lang.NoClassDefFoundError: hudson/tasks/Mailer$UserProperty at hudson.plugins.git.GitChangeLogParser.parseCommit(GitChangeLogParser.java:70) at hudson.plugins.git.GitChangeLogParser.parse(GitChangeLogParser.java:59) at hudson.plugins.git.GitChangeLogParser.parse(GitChangeLogParser.java:23) at hudson.model.AbstractBuild.calcChangeSet(AbstractBuild.java:922) at hudson.model.AbstractBuild.getChangeSet(AbstractBuild.java:896) ... 109 more Caused by: java.lang.ClassNotFoundException: hudson.tasks.Mailer$UserProperty at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1365) at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1315) at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1068) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) ... 114 more
Well, well, well... I activated the "Jenkins Mailer plugin" and the error is gone. Seems like a silly mistake of mine, but I just deactivated all plugins I do not use directly (seems reasonable to me). I had a similar issue with the maven plugin. I do not use maven in my project and thus deactivated the plugin. Consequence, the build failed all the time.
I think it shouldn't be possible to deactivate plugins if they are so crucial for jenkins core or used by other plugins.
Added git in components. @git plugin devs, please check last trace.
Yes, i also think that plugins should have right dependencies.
Why git component was removed without any comments?
mailer has been split into a specific component, but as git plugin is built on 1.480 (before this happen) it can't anticipate this. Correct behavior would be for jenkins pluginManager to know this, then to automatically add mailer as implicit dependency when installed plugin is based on pre-split jenkins version.
This actually is already the case, based on hudson.ClassicPluginStrategy#DETACHED_LIST
BUT such (implicit) plugin dependecy is set as optional, and user can disable them without a warning. This breaks git-plugin when mailer plugin is disabled, but no way to fix afaik until git-plugin uses recent jenkins as base - something I want to avoid as MANY users are still running pretty old jenkins instances (even < 1.480).
Would make sense anyway to make mailer dependency conditional in git-plugin, checking for hudson.task.Mailer class to be available in classpath.
Hello,
I am a bit new to Jenkins, so my apologies if this comment is not appropriate. I have been working on the "digest.jelly" error for about day now and I don't seem to be getting any closer to finding a fix.
I started getting this error when I upgraded Jenkins. I have now reinstalled it several times on versions going back to 1.515 from 19-May-2013. Yet I am still getting the same digest.jelly error. The comments here imply that the error is caused by a dependency in a plugin. So I have tried to install several of them, but without any results.
Does anyone have any workaround?
I am using Windows 7 with 16GB RAM and a doing a build from subversion repository. I have also tested on a Mac and get the same errors.
Any help would be appreciated.
Thanks! - Dan
Error message is below:
Exception: org.apache.commons.jelly.JellyTagException: jar:file:/D:/Apps/tomcat/orbeon4.3/webapps/jenkins/WEB-INF/lib/jenkins-core-1.515.jar!/hudson/model/AbstractBuild/index.jelly:67:61: <st:include> No page found 'digest.jelly' for class hudson.model.FreeStyleBuild
Stacktrace:
javax.servlet.ServletException: org.apache.commons.jelly.JellyTagException: jar:file:/D:/Apps/tomcat/orbeon4.3/webapps/jenkins/WEB-INF/lib/jenkins-core-1.515.jar!/hudson/model/AbstractBuild/index.jelly:67:61: <st:include> No page found 'digest.jelly' for class hudson.model.FreeStyleBuild
at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:117)
at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127)
In my case the plugins were installed but not activated. You might want to check this. Hope that helps.
Cheers, Robert
Thanks Robert!
I tried this but it did not work.
I did find that if I use the separate Windows and Mac installer and not the war file install on an existing Tomcat that the problem goes away. This is only a short-term fix for some urgent work, but running two web servers is not a good long-term solution.
I am willing to pay someone to fix this or trade consulting services. Anyone need an XML guru?
- Dan
Issue caused by invalid plugin configuration. not a bug.
Jenkins should really tell you if your plugin configuration is potentially invalid (it's easier to determine with mandatory dependencies than with implied ones) – filed JENKINS-23150 to track improvements in that area.
it works in version 523, broken in 524, 525