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

Matrix Combinations: Configuration changes cause NPE

      If Matrix Combinations Parameter is used in a job and the configuration of that job changes, all subsequent attempts to build the project lead to an NPE when rendering the configuration selection page.

      This happens when the configuration change affects the matrix itself (e.g. axis change, combination filter update), thus creating configurations which haven't been run before, but should be available for selection in the new build. A similar situation can be encountered after configuring a job to use the parameter for the first time, provided it was using a combination filter before.

      Stacktrace:

      Status Code: 500
      Exception: org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/hudson/model/ParametersDefinitionProperty/index.jelly:50:78: <st:include> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/form/entry.jelly:73:23: <d:invokeBody> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/hudson/project/matrix.jelly:86:41: <d:invokeBody> java.lang.NullPointerException
      Stacktrace:
      
      javax.servlet.ServletException: org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/hudson/model/ParametersDefinitionProperty/index.jelly:50:78: <st:include> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/form/entry.jelly:73:23: <d:invokeBody> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/hudson/project/matrix.jelly:86:41: <d:invokeBody> java.lang.NullPointerException
      	at org.kohsuke.stapler.jelly.JellyRequestDispatcher.forward(JellyRequestDispatcher.java:60)
      	at hudson.model.ParametersDefinitionProperty._doBuild(ParametersDefinitionProperty.java:112)
      	at hudson.model.AbstractProject.doBuild(AbstractProject.java:1651)
      	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:606)
      	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
      	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
      	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
      	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
      	at hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      	at org.jenkinsci.plugins.reverse_proxy_auth.ReverseProxySecurityRealm$1.doFilter(ReverseProxySecurityRealm.java:142)
      	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
      	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:407)
      	at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
      	at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:488)
      	at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:420)
      	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)
      	at java.lang.Thread.run(Thread.java:744)
      Caused by: org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/hudson/model/ParametersDefinitionProperty/index.jelly:50:78: <st:include> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/form/entry.jelly:73:23: <d:invokeBody> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/hudson/project/matrix.jelly:86:41: <d:invokeBody> java.lang.NullPointerException
      	at org.apache.commons.jelly.impl.TagScript.handleException(TagScript.java:726)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:281)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      	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.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.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.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.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.impl.ScriptBlock.run(ScriptBlock.java:95)
      	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.JellyRequestDispatcher.forward(JellyRequestDispatcher.java:55)
      	... 53 more
      Caused by: java.lang.RuntimeException: org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/form/entry.jelly:73:23: <d:invokeBody> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/hudson/project/matrix.jelly:86:41: <d:invokeBody> java.lang.NullPointerException
      	at org.kohsuke.stapler.jelly.groovy.JellyBuilder.doInvokeMethod(JellyBuilder.java:287)
      	at org.kohsuke.stapler.jelly.groovy.Namespace.invokeMethod(Namespace.java:56)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:45)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index.drawMainBody(index.groovy:43)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index.this$6$drawMainBody(index.groovy)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index$this$6$drawMainBody.callCurrent(Unknown Source)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index.run(index.groovy:36)
      	at org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:66)
      	at org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:59)
      	at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:146)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	... 97 more
      Caused by: org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/form/entry.jelly:73:23: <d:invokeBody> org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/hudson/project/matrix.jelly:86:41: <d:invokeBody> java.lang.NullPointerException
      	at org.apache.commons.jelly.impl.TagScript.handleException(TagScript.java:726)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:281)
      	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.kohsuke.stapler.jelly.groovy.JellyBuilder.doInvokeMethod(JellyBuilder.java:283)
      	... 108 more
      Caused by: java.lang.RuntimeException: org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/hudson/project/matrix.jelly:86:41: <d:invokeBody> java.lang.NullPointerException
      	at org.kohsuke.stapler.jelly.groovy.JellyBuilder.doInvokeMethod(JellyBuilder.java:287)
      	at org.kohsuke.stapler.jelly.groovy.Namespace.invokeMethod(Namespace.java:56)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:45)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index$_drawMainBody_closure1_closure3.doCall(index.groovy:46)
      	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:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index$_drawMainBody_closure1_closure3.doCall(index.groovy)
      	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:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at groovy.lang.Closure.call(Closure.java:412)
      	at groovy.lang.Closure.call(Closure.java:406)
      	at org.kohsuke.stapler.jelly.groovy.JellyBuilder.doInvokeMethod(JellyBuilder.java:307)
      	at org.kohsuke.stapler.jelly.groovy.JellyBuilder.methodMissing(JellyBuilder.java:180)
      	at sun.reflect.GeneratedMethodAccessor498.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaClassImpl.invokeMissingMethod(MetaClassImpl.java:811)
      	at groovy.lang.MetaClassImpl.invokePropertyOrMissing(MetaClassImpl.java:1103)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1056)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:704)
      	at groovy.lang.GroovyObjectSupport.invokeMethod(GroovyObjectSupport.java:44)
      	at org.kohsuke.stapler.jelly.groovy.GroovyClosureScript.invokeMethod(GroovyClosureScript.java:88)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeOnDelegationObjects(ClosureMetaClass.java:407)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:346)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:145)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index$_drawMainBody_closure1.doCall(index.groovy:44)
      	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:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index$_drawMainBody_closure1.doCall(index.groovy)
      	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:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at groovy.lang.Closure.call(Closure.java:412)
      	at groovy.lang.Closure.call(Closure.java:406)
      	at org.kohsuke.stapler.jelly.groovy.JellyBuilder$1.run(JellyBuilder.java:271)
      	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)
      	... 115 more
      Caused by: org.apache.commons.jelly.JellyTagException: vfs:/content/hudson.war/WEB-INF/lib/jenkins-core-1.480.2-SNAPSHOT.jar/lib/hudson/project/matrix.jelly:86:41: <d:invokeBody> java.lang.NullPointerException
      	at org.apache.commons.jelly.impl.TagScript.handleException(TagScript.java:726)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:281)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)
      	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269)
      	at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      	at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      	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.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:150)
      	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.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:41)
      	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.TagSupport.invokeBody(TagSupport.java:161)
      	at org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:38)
      	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.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      	at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      	at org.kohsuke.stapler.jelly.groovy.JellyBuilder.doInvokeMethod(JellyBuilder.java:283)
      	... 184 more
      Caused by: java.lang.NullPointerException
      	at org.codehaus.groovy.runtime.callsite.GetEffectivePojoPropertySite.acceptGetProperty(GetEffectivePojoPropertySite.java:51)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:227)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index$_drawMainBody_closure1_closure3_closure4.doCall(index.groovy:47)
      	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:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141)
      	at hudson.plugins.matrix_configuration_parameter.matrixcombinationparameterDefinition.index$_drawMainBody_closure1_closure3_closure4.doCall(index.groovy)
      	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:606)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:884)
      	at groovy.lang.Closure.call(Closure.java:412)
      	at groovy.lang.Closure.call(Closure.java:406)
      	at org.kohsuke.stapler.jelly.groovy.JellyBuilder$1.run(JellyBuilder.java:271)
      	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)
      	... 215 more
      

          [JENKINS-23030] Matrix Combinations: Configuration changes cause NPE

          Miro Cupak added a comment -

          Miro Cupak added a comment - This PR should fix the issue: https://github.com/jenkinsci/matrix-combinations-plugin/pull/5

          ikedam added a comment -

          I tried another way in https://github.com/jenkinsci/matrix-combinations-plugin/pull/7 .
          Could you let me know an example step to reproduce the problem?
          I added a test to reproduce this problem, but that seems not happen in common usage.

          ikedam added a comment - I tried another way in https://github.com/jenkinsci/matrix-combinations-plugin/pull/7 . Could you let me know an example step to reproduce the problem? I added a test to reproduce this problem, but that seems not happen in common usage.

          Code changed in jenkins
          User: ikedam
          Path:
          src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinitionTest.java
          http://jenkins-ci.org/commit/matrix-combinations-plugin/21950f6de88d4440dae1766c31e032396138503c
          Log:
          JENKINS-23030 Added a test to reproduce JENKINS-23030.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: ikedam Path: src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinitionTest.java http://jenkins-ci.org/commit/matrix-combinations-plugin/21950f6de88d4440dae1766c31e032396138503c Log: JENKINS-23030 Added a test to reproduce JENKINS-23030 .

          Code changed in jenkins
          User: ikedam
          Path:
          src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinition/index.groovy
          src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/rebuild.groovy
          src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/value.groovy
          src/main/resources/hudson/plugins/matrix_configuration_parameter/taglib/matrix.jelly
          http://jenkins-ci.org/commit/matrix-combinations-plugin/a3b2e3d275e5919e7bdc23be194a7399fc7bd20c
          Log:
          [FIXED JENKINS-23030] Use Combination for Layouter instead of built-in Layouter. This avoids NPE when MatrixCombination is not available.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: ikedam Path: src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinition/index.groovy src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/rebuild.groovy src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/value.groovy src/main/resources/hudson/plugins/matrix_configuration_parameter/taglib/matrix.jelly http://jenkins-ci.org/commit/matrix-combinations-plugin/a3b2e3d275e5919e7bdc23be194a7399fc7bd20c Log: [FIXED JENKINS-23030] Use Combination for Layouter instead of built-in Layouter. This avoids NPE when MatrixCombination is not available.

          Code changed in jenkins
          User: ikedam
          Path:
          src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinition/index.groovy
          src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/rebuild.groovy
          src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/value.groovy
          src/main/resources/hudson/plugins/matrix_configuration_parameter/taglib/matrix.jelly
          src/main/resources/hudson/plugins/matrix_configuration_parameter/taglib/taglib
          src/test/java/hudson/plugins/matrix_configuration_parameter/ConditionalFailBuilder.java
          src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsJenkinsRule.java
          src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinitionTest.java
          src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValueTest.java
          http://jenkins-ci.org/commit/matrix-combinations-plugin/60e111a8a2882807af75e36fc6680d953d9dc4ee
          Log:
          Merge pull request #7 from ikedam/feature/JENKINS-23561_UseOwnTaglib

          JENKINS-23561 JENKINS-23030 Use customized matrix tag

          Compare: https://github.com/jenkinsci/matrix-combinations-plugin/compare/5d9b818f77e2...60e111a8a288

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: ikedam Path: src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinition/index.groovy src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/rebuild.groovy src/main/resources/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValue/value.groovy src/main/resources/hudson/plugins/matrix_configuration_parameter/taglib/matrix.jelly src/main/resources/hudson/plugins/matrix_configuration_parameter/taglib/taglib src/test/java/hudson/plugins/matrix_configuration_parameter/ConditionalFailBuilder.java src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsJenkinsRule.java src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterDefinitionTest.java src/test/java/hudson/plugins/matrix_configuration_parameter/MatrixCombinationsParameterValueTest.java http://jenkins-ci.org/commit/matrix-combinations-plugin/60e111a8a2882807af75e36fc6680d953d9dc4ee Log: Merge pull request #7 from ikedam/feature/ JENKINS-23561 _UseOwnTaglib JENKINS-23561 JENKINS-23030 Use customized matrix tag Compare: https://github.com/jenkinsci/matrix-combinations-plugin/compare/5d9b818f77e2...60e111a8a288

          ikedam added a comment -

          Released in 1.0.7.

          ikedam added a comment - Released in 1.0.7.

            ikedam ikedam
            mcupak Miro Cupak
            Votes:
            2 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: