Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-20198

Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      After updating to the latest jenkins version (v1.536) i get this error when saving a project which has the email-ext plugin enabled

      EDIT:

      It looks like it has to do with missing options in the config (the config hasn't changed for weeks now..) but with a litle bit of guessing i found what options were required. So maybe a fix for this issue could be to have required fields and give the user feedback on what fields he has to fill instead of this raw error

      javax.servlet.ServletException: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ***@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class<span class="code-quote">":"","kind":""},"stapler-class<span class="code-quote">":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:777)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:630)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:224)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
      	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	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 org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      	at org.eclipse.jetty.server.Server.handle(Server.java:370)
      	at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
      	at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
      	at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
      	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
      	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
      	at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      	at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      	at java.lang.Thread.run(Thread.java:722)
      Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ****@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class<span class="code-quote">":"","kind":""},"stapler-class<span class="code-quote">":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
      	at hudson.model.Descriptor.newInstance(Descriptor.java:578)
      	at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:916)
      	at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:901)
      	at hudson.util.DescribableList.rebuildHetero(DescribableList.java:203)
      	at hudson.model.Project.submit(Project.java:208)
      	at hudson.model.Job.doConfigSubmit(Job.java:1136)
      	at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:787)
      	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:601)
      	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297)
      	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:160)
      	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:95)
      	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
      	... 63 more
      Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ****@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class<span class="code-quote">":"","kind":""},"stapler-class<span class="code-quote">":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
      	at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
      	at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:396)
      	at hudson.model.Descriptor.newInstance(Descriptor.java:569)
      	... 79 more
      Caused by: java.lang.IllegalArgumentException: Failed to convert the project_triggers parameter of the constructor public hudson.plugins.emailext.ExtendedEmailPublisher(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,java.lang.String,boolean,java.util.List,hudson.plugins.emailext.MatrixTriggerMode)
      	at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:686)
      	at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
      	... 82 more
      Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.emailext.plugins.EmailTrigger from {"stapler-class":"","kind":""}
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:625)
      	at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
      	at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:684)
      	... 84 more
      Caused by: java.lang.IllegalArgumentException: Class  is specified in JSON, but no such class found in classLoader hudson.PluginManager$UberClassLoader
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:583)
      	... 87 more
      Caused by: java.lang.ClassNotFoundException: 
      	at hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:985)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:578)
      	... 87 more
      

        Attachments

          Issue Links

            Activity

            jeroenthora Jeroen Thora created issue -
            jeroenthora Jeroen Thora made changes -
            Field Original Value New Value
            Description After updating to the latest jenkins version (v1.536) i get this error when saving a project which has the email-ext plugin enabled

            {code}
            javax.servlet.ServletException: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ***@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class":"","kind":""},"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:777)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
            at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
            at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:630)
            at org.kohsuke.stapler.Stapler.service(Stapler.java:224)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
            at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
            at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            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 org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
            at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
            at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
            at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
            at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
            at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
            at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
            at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
            at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
            at org.eclipse.jetty.server.Server.handle(Server.java:370)
            at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
            at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
            at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
            at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
            at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
            at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
            at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
            at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
            at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
            at java.lang.Thread.run(Thread.java:722)
            Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ****@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class":"","kind":""},"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
            at hudson.model.Descriptor.newInstance(Descriptor.java:578)
            at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:916)
            at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:901)
            at hudson.util.DescribableList.rebuildHetero(DescribableList.java:203)
            at hudson.model.Project.submit(Project.java:208)
            at hudson.model.Job.doConfigSubmit(Job.java:1136)
            at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:787)
            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:601)
            at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297)
            at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:160)
            at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:95)
            at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
            at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
            ... 63 more
            Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ****@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class":"","kind":""},"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:396)
            at hudson.model.Descriptor.newInstance(Descriptor.java:569)
            ... 79 more
            Caused by: java.lang.IllegalArgumentException: Failed to convert the project_triggers parameter of the constructor public hudson.plugins.emailext.ExtendedEmailPublisher(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,java.lang.String,boolean,java.util.List,hudson.plugins.emailext.MatrixTriggerMode)
            at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:686)
            at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
            ... 82 more
            Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.emailext.plugins.EmailTrigger from {"stapler-class":"","kind":""}
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:625)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
            at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:684)
            ... 84 more
            Caused by: java.lang.IllegalArgumentException: Class is specified in JSON, but no such class found in classLoader hudson.PluginManager$UberClassLoader
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:583)
            ... 87 more
            Caused by: java.lang.ClassNotFoundException:
            at hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:985)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:578)
            ... 87 more
            {code}
            After updating to the latest jenkins version (v1.536) i get this error when saving a project which has the email-ext plugin enabled

            EDIT:

            It looks like it has to do with missing options in the config (the config hasn't changed for weeks now..) but with a litle bit of guessing i found what options were required. So maybe a fix for this issue could be to have required fields and give the user feedback on what fields he has to fill instead of this raw error

            {code}
            javax.servlet.ServletException: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ***@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class":"","kind":""},"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:777)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
            at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
            at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:630)
            at org.kohsuke.stapler.Stapler.service(Stapler.java:224)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
            at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
            at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            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 org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
            at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
            at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
            at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
            at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
            at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
            at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
            at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
            at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
            at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
            at org.eclipse.jetty.server.Server.handle(Server.java:370)
            at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
            at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
            at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
            at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
            at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
            at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
            at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
            at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
            at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
            at java.lang.Thread.run(Thread.java:722)
            Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ****@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class":"","kind":""},"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
            at hudson.model.Descriptor.newInstance(Descriptor.java:578)
            at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:916)
            at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:901)
            at hudson.util.DescribableList.rebuildHetero(DescribableList.java:203)
            at hudson.model.Project.submit(Project.java:208)
            at hudson.model.Job.doConfigSubmit(Job.java:1136)
            at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:787)
            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:601)
            at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297)
            at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:160)
            at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:95)
            at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
            at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
            ... 63 more
            Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ****@mail.com","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"default","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"1","project_presend_script":"","project_save_output":false,"project_triggers":{"stapler-class":"","kind":""},"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:396)
            at hudson.model.Descriptor.newInstance(Descriptor.java:569)
            ... 79 more
            Caused by: java.lang.IllegalArgumentException: Failed to convert the project_triggers parameter of the constructor public hudson.plugins.emailext.ExtendedEmailPublisher(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,java.lang.String,boolean,java.util.List,hudson.plugins.emailext.MatrixTriggerMode)
            at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:686)
            at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
            ... 82 more
            Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.emailext.plugins.EmailTrigger from {"stapler-class":"","kind":""}
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:625)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
            at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:684)
            ... 84 more
            Caused by: java.lang.IllegalArgumentException: Class is specified in JSON, but no such class found in classLoader hudson.PluginManager$UberClassLoader
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:583)
            ... 87 more
            Caused by: java.lang.ClassNotFoundException:
            at hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:985)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:578)
            ... 87 more
            {code}
            Hide
            slide_o_mix Alex Earl added a comment -

            Be aware that the plugin is only tested with the most recent LTS release, any releases after that have not received any testing and so there are possibly breaking issues in the core. Please post the config.xml that is "missing options".

            Show
            slide_o_mix Alex Earl added a comment - Be aware that the plugin is only tested with the most recent LTS release, any releases after that have not received any testing and so there are possibly breaking issues in the core. Please post the config.xml that is "missing options".
            Hide
            jeroenthora Jeroen Thora added a comment -

            I found that the problem is with the mail trigger, so i add a mail trigger and save (that works correctly) but when i open my config after that it show an empty line for the build trigger and it throws the error above when saving

            Before save: http://i.imgur.com/y4fVeMx.png

            After save: http://i.imgur.com/ciHCJBb.png

            Show
            jeroenthora Jeroen Thora added a comment - I found that the problem is with the mail trigger, so i add a mail trigger and save (that works correctly) but when i open my config after that it show an empty line for the build trigger and it throws the error above when saving Before save: http://i.imgur.com/y4fVeMx.png After save: http://i.imgur.com/ciHCJBb.png
            slide_o_mix Alex Earl made changes -
            Link This issue is related to JENKINS-18629 [ JENKINS-18629 ]
            Hide
            welpvec Pascal Welte added a comment - - edited

            We have the same problem. Sometimes save works and sometimes we got the above described error. I found out that config.xml has <null> in <configuredTriggers> and therefor is not able to run the job. If I put in the correct values manually and reload jenkins settings. Everything works fine. So I think its a problem of the job save mechanism.

            Environment:
            Ubuntu 12.04 LTS
            Jenkins 1.5.36
            Email-ext 2.35.1

            Show
            welpvec Pascal Welte added a comment - - edited We have the same problem. Sometimes save works and sometimes we got the above described error. I found out that config.xml has <null> in <configuredTriggers> and therefor is not able to run the job. If I put in the correct values manually and reload jenkins settings. Everything works fine. So I think its a problem of the job save mechanism. Environment: Ubuntu 12.04 LTS Jenkins 1.5.36 Email-ext 2.35.1
            Hide
            slide_o_mix Alex Earl added a comment -

            I linked this issue to one that looks similar that was related to some new Stapler stuff in core, it is supposedly fixed in 1.536, but there may still be some issues.

            Show
            slide_o_mix Alex Earl added a comment - I linked this issue to one that looks similar that was related to some new Stapler stuff in core, it is supposedly fixed in 1.536, but there may still be some issues.
            Hide
            growell_varolii Geoff Rowell added a comment -

            Got this after upgrading Jenkins from v1.535 to v1.536 (and EmailExt plugin from v2.34 to v2.35.1). Looks like the same thing as JIRA-20030. Job configuration files end up with <null/> tags, in place of the prior content of the <configuredTriggers> tag. Causes NPEs, when you try to run the job.

            OS: Windows 2008x64
            Jenkins: v1.536
            EmailExt: v2.35.1
            Show
            growell_varolii Geoff Rowell added a comment - Got this after upgrading Jenkins from v1.535 to v1.536 (and EmailExt plugin from v2.34 to v2.35.1). Looks like the same thing as JIRA-20030. Job configuration files end up with <null/> tags, in place of the prior content of the <configuredTriggers> tag. Causes NPEs, when you try to run the job. OS: Windows 2008x64 Jenkins: v1.536 EmailExt: v2.35.1
            slide_o_mix Alex Earl made changes -
            Link This issue is related to JENKINS-20199 [ JENKINS-20199 ]
            Hide
            slide_o_mix Alex Earl added a comment -

            No, I don't think this is the same thing as JENKINS-20030 at all. That was a change in the way that parameters were parsed from the job config page, this is completely different. I believe it has to do with changes that were made in 1.536.

            Show
            slide_o_mix Alex Earl added a comment - No, I don't think this is the same thing as JENKINS-20030 at all. That was a change in the way that parameters were parsed from the job config page, this is completely different. I believe it has to do with changes that were made in 1.536.
            jglick Jesse Glick made changes -
            Link This issue is blocking JENKINS-18629 [ JENKINS-18629 ]
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-18629 [ JENKINS-18629 ]
            Hide
            mikemcquaid Mike McQuaid added a comment -

            On 1.536 whether I downgrade to 1.535 and/or Email Ext 2.34 I get a failure on saving every time. May I suggest you submit this only to the LTS plugin repository rather than the main one if you don't test it on the main stable releases? It feels like almost every Jenkins update I do breaks something new in this plugin

            Show
            mikemcquaid Mike McQuaid added a comment - On 1.536 whether I downgrade to 1.535 and/or Email Ext 2.34 I get a failure on saving every time. May I suggest you submit this only to the LTS plugin repository rather than the main one if you don't test it on the main stable releases? It feels like almost every Jenkins update I do breaks something new in this plugin
            Hide
            mikemcquaid Mike McQuaid added a comment -

            The failure seems to be the <null/> trigger that created. I have to remove that to fix the error (just in case anyone else runs into the same problem). It seems to be working on on 1.535 now.

            Show
            mikemcquaid Mike McQuaid added a comment - The failure seems to be the <null/> trigger that created. I have to remove that to fix the error (just in case anyone else runs into the same problem). It seems to be working on on 1.535 now.
            Hide
            slide_o_mix Alex Earl added a comment -

            Yes, 1.536 adds the <null/> trigger element because of some breaking change in the way JSON is done, so reverting back to 1.535 with the changes that 1.536 made would still cause you problems.

            There is no way to release "only to the LTS plugin repository" the Jenkins release process doesn't work that way. If you want a more stable environment, use the LTS, that is what it is for. The plugin is developed against the LTS for a reason.

            Show
            slide_o_mix Alex Earl added a comment - Yes, 1.536 adds the <null/> trigger element because of some breaking change in the way JSON is done, so reverting back to 1.535 with the changes that 1.536 made would still cause you problems. There is no way to release "only to the LTS plugin repository" the Jenkins release process doesn't work that way. If you want a more stable environment, use the LTS, that is what it is for. The plugin is developed against the LTS for a reason.
            Hide
            growell_varolii Geoff Rowell added a comment -

            I believe the <null/> tags were inserted when the plugin failed to upgrade the <configuredTriggers> content, for the new plugin version. Having previously experience with problems like this, I always install the job configuration history plugin. Using that information, I reverted the job configuration XML files to a prior-to-upgrade copy. This fixed the problem.

            I'll have to closely review any saved job configuration changes, until the issue is fixed.

            Show
            growell_varolii Geoff Rowell added a comment - I believe the <null/> tags were inserted when the plugin failed to upgrade the <configuredTriggers> content, for the new plugin version. Having previously experience with problems like this, I always install the job configuration history plugin. Using that information, I reverted the job configuration XML files to a prior-to-upgrade copy. This fixed the problem. I'll have to closely review any saved job configuration changes, until the issue is fixed.
            slide_o_mix Alex Earl made changes -
            Link This issue is duplicated by JENKINS-20229 [ JENKINS-20229 ]
            Hide
            slide_o_mix Alex Earl added a comment -

            @Jeroen the before and after pictures look the same.

            Show
            slide_o_mix Alex Earl added a comment - @Jeroen the before and after pictures look the same.
            Hide
            jeroenthora Jeroen Thora added a comment -

            @Alex yeah my bad somehow uploaded the wrong images these are the correct ones

            Before save: http://i.imgur.com/y4fVeMx.png

            After save: http://i.imgur.com/xsqsaY6.png

            The problem is with the empty trigger line (null value as said above in the comments)

            Show
            jeroenthora Jeroen Thora added a comment - @Alex yeah my bad somehow uploaded the wrong images these are the correct ones Before save: http://i.imgur.com/y4fVeMx.png After save: http://i.imgur.com/xsqsaY6.png The problem is with the empty trigger line (null value as said above in the comments)
            Hide
            sashavr Oleksandr Ruchko added a comment -

            I got the same failure.

            Show
            sashavr Oleksandr Ruchko added a comment - I got the same failure.
            slide_o_mix Alex Earl made changes -
            Link This issue depends on JENKINS-20262 [ JENKINS-20262 ]
            Hide
            chr0n1x Kevin R. added a comment -

            Same here. The configuration for the job is not saved and any email triggers are saved with a <null/> tag.

            Show
            chr0n1x Kevin R. added a comment - Same here. The configuration for the job is not saved and any email triggers are saved with a <null/> tag.
            Hide
            slide_o_mix Alex Earl added a comment -

            removed override of newInstance for EmailTriggerDescriptor that is not really needed, this works around the new behavior added in Jenkins 1.536

            Show
            slide_o_mix Alex Earl added a comment - removed override of newInstance for EmailTriggerDescriptor that is not really needed, this works around the new behavior added in Jenkins 1.536
            slide_o_mix Alex Earl made changes -
            Resolution Fixed [ 1 ]
            Status Open [ 1 ] Resolved [ 5 ]
            Hide
            slide_o_mix Alex Earl added a comment -
            Show
            slide_o_mix Alex Earl added a comment - Please try the hpi from here to see if it fixes the issue for you https://jenkins.ci.cloudbees.com/job/plugins/job/email-ext-plugin/org.jenkins-ci.plugins$email-ext/118/
            Hide
            johnsdavis john davis added a comment -

            I installed the hpi onto Jenkins 1.536 under RHEL 6; added "Editable Email Notification" as a Post-Buid step to a job; configured the job and saved the configuration.

            I did a "Build Now" and the build succeeded and email was successfully sent.

            Show
            johnsdavis john davis added a comment - I installed the hpi onto Jenkins 1.536 under RHEL 6; added "Editable Email Notification" as a Post-Buid step to a job; configured the job and saved the configuration. I did a "Build Now" and the build succeeded and email was successfully sent.
            Hide
            growell_varolii Geoff Rowell added a comment -

            Verified that it works for Jenkins v1.536 under Windows 2008x64.

            Show
            growell_varolii Geoff Rowell added a comment - Verified that it works for Jenkins v1.536 under Windows 2008x64.
            Hide
            slide_o_mix Alex Earl added a comment -

            Ok, I'll be doing a release either tonight or tomorrow then.

            Show
            slide_o_mix Alex Earl added a comment - Ok, I'll be doing a release either tonight or tomorrow then.
            jglick Jesse Glick made changes -
            Link This issue is blocking JENKINS-18629 [ JENKINS-18629 ]
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Alex Earl
            Path:
            src/main/java/hudson/plugins/emailext/plugins/EmailTriggerDescriptor.java
            http://jenkins-ci.org/commit/email-ext-plugin/15832cbb4686122fd43d30af0104b970f43339a5
            Log:
            Fix JENKINS-20198

            Removed override of newInstance for EmailTriggerDescriptor. It's not needed because the email triggers should have DataBoundConstructor annotations. The new BindingInterceptor in hudson.model.Descriptor caused an issue with the newInstance method.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Alex Earl Path: src/main/java/hudson/plugins/emailext/plugins/EmailTriggerDescriptor.java http://jenkins-ci.org/commit/email-ext-plugin/15832cbb4686122fd43d30af0104b970f43339a5 Log: Fix JENKINS-20198 Removed override of newInstance for EmailTriggerDescriptor. It's not needed because the email triggers should have DataBoundConstructor annotations. The new BindingInterceptor in hudson.model.Descriptor caused an issue with the newInstance method.
            Hide
            zakyn Vladimir Zak added a comment - - edited

            Hello,

            This trouble is probably still there in the last LTS Jenkins version - Jenkins ver. 1.554.2

            Could you please to fix it there? It is quite urgent now - saving any changes in configuration causes an exception.

            Thank you.

            Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"text/html","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"0","project_presend_script":"$DEFAULT_PRESEND_SCRIPT","project_save_output":false,"project_triggers":[

            {"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.BuildingTrigger","kind":"hudson.plugins.emailext.plugins.trigger.BuildingTrigger"}

            ,{"recipientProviders":[

            {"stapler-class":"hudson.plugins.emailext.plugins.recipients.DevelopersRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.DevelopersRecipientProvider"}

            ,

            {"stapler-class":"hudson.plugins.emailext.plugins.recipients.RequesterRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.RequesterRecipientProvider"}

            ,

            {"stapler-class":"hudson.plugins.emailext.plugins.recipients.CulpritsRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.CulpritsRecipientProvider"}

            ],"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.FailureTrigger","kind":"hudson.plugins.emailext.plugins.trigger.FailureTrigger"},

            {"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.SuccessTrigger","kind":"hudson.plugins.emailext.plugins.trigger.SuccessTrigger"}

            ,{"recipientProviders":

            {"stapler-class":"hudson.plugins.emailext.plugins.recipients.ListRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.ListRecipientProvider"}

            ,"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.PreBuildTrigger","kind":"hudson.plugins.emailext.plugins.trigger.PreBuildTrigger"}],"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"}
            at hudson.model.Descriptor.newInstance(Descriptor.java:576)
            at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:914)
            at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:899)
            at hudson.util.DescribableList.rebuildHetero(DescribableList.java:203)
            at hudson.model.Project.submit(Project.java:208)
            at hudson.model.Job.doConfigSubmit(Job.java:1136)
            at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:786)
            ... 84 more
            Caused by: java.lang.NullPointerException
            at java.util.ArrayList.addAll(Unknown Source)
            at hudson.plugins.emailext.EmailType.addRecipientProviders(EmailType.java:138)
            at hudson.plugins.emailext.plugins.EmailTrigger.<init>(EmailTrigger.java:69)
            at hudson.plugins.emailext.plugins.trigger.BuildingTrigger.<init>(BuildingTrigger.java:22)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
            at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
            at java.lang.reflect.Constructor.newInstance(Unknown Source)
            at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:447)
            at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:690)
            at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:634)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
            at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:684)
            at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
            at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
            at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:396)
            at hudson.model.Descriptor.newInstance(Descriptor.java:567)
            ... 90 more

            Show
            zakyn Vladimir Zak added a comment - - edited Hello, This trouble is probably still there in the last LTS Jenkins version - Jenkins ver. 1.554.2 Could you please to fix it there? It is quite urgent now - saving any changes in configuration causes an exception. Thank you. Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.emailext.ExtendedEmailPublisher from {"project_recipient_list":"$DEFAULT_RECIPIENTS, ","project_replyto":"$DEFAULT_REPLYTO","project_content_type":"text/html","project_default_subject":"$DEFAULT_SUBJECT","project_default_content":"$DEFAULT_CONTENT","project_attachments":"","project_attach_buildlog":"0","project_presend_script":"$DEFAULT_PRESEND_SCRIPT","project_save_output":false,"project_triggers":[ {"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.BuildingTrigger","kind":"hudson.plugins.emailext.plugins.trigger.BuildingTrigger"} ,{"recipientProviders":[ {"stapler-class":"hudson.plugins.emailext.plugins.recipients.DevelopersRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.DevelopersRecipientProvider"} , {"stapler-class":"hudson.plugins.emailext.plugins.recipients.RequesterRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.RequesterRecipientProvider"} , {"stapler-class":"hudson.plugins.emailext.plugins.recipients.CulpritsRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.CulpritsRecipientProvider"} ],"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.FailureTrigger","kind":"hudson.plugins.emailext.plugins.trigger.FailureTrigger"}, {"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.SuccessTrigger","kind":"hudson.plugins.emailext.plugins.trigger.SuccessTrigger"} ,{"recipientProviders": {"stapler-class":"hudson.plugins.emailext.plugins.recipients.ListRecipientProvider","kind":"hudson.plugins.emailext.plugins.recipients.ListRecipientProvider"} ,"recipientList":"","replyTo":"$PROJECT_DEFAULT_REPLYTO","contentType":"project","subject":"$PROJECT_DEFAULT_SUBJECT","body":"$PROJECT_DEFAULT_CONTENT","attachmentsPattern":"","attachBuildLog":"0","stapler-class":"hudson.plugins.emailext.plugins.trigger.PreBuildTrigger","kind":"hudson.plugins.emailext.plugins.trigger.PreBuildTrigger"}],"stapler-class":"hudson.plugins.emailext.ExtendedEmailPublisher","kind":"hudson.plugins.emailext.ExtendedEmailPublisher"} at hudson.model.Descriptor.newInstance(Descriptor.java:576) at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:914) at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:899) at hudson.util.DescribableList.rebuildHetero(DescribableList.java:203) at hudson.model.Project.submit(Project.java:208) at hudson.model.Job.doConfigSubmit(Job.java:1136) at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:786) ... 84 more Caused by: java.lang.NullPointerException at java.util.ArrayList.addAll(Unknown Source) at hudson.plugins.emailext.EmailType.addRecipientProviders(EmailType.java:138) at hudson.plugins.emailext.plugins.EmailTrigger.<init>(EmailTrigger.java:69) at hudson.plugins.emailext.plugins.trigger.BuildingTrigger.<init>(BuildingTrigger.java:22) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:447) at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:690) at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81) at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587) at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:634) at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400) at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:684) at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81) at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587) at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400) at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:396) at hudson.model.Descriptor.newInstance(Descriptor.java:567) ... 90 more
            zakyn Vladimir Zak made changes -
            Resolution Fixed [ 1 ]
            Status Resolved [ 5 ] Reopened [ 4 ]
            Hide
            zakyn Vladimir Zak added a comment -

            I have downgraded to the 2.37.2 version and the problem is not there.

            Show
            zakyn Vladimir Zak added a comment - I have downgraded to the 2.37.2 version and the problem is not there.
            Hide
            slide_o_mix Alex Earl added a comment -

            Please don't reopen this bug, your issue is not the same. Open a new issue.

            Show
            slide_o_mix Alex Earl added a comment - Please don't reopen this bug, your issue is not the same. Open a new issue.
            slide_o_mix Alex Earl made changes -
            Resolution Fixed [ 1 ]
            Status Reopened [ 4 ] Resolved [ 5 ]
            rtyler R. Tyler Croy made changes -
            Workflow JNJira [ 151720 ] JNJira + In-Review [ 194064 ]

              People

              Assignee:
              slide_o_mix Alex Earl
              Reporter:
              jeroenthora Jeroen Thora
              Votes:
              8 Vote for this issue
              Watchers:
              19 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: