Jump to content

PlasticSCM Plugin for Jenkins seems to break Jenkins REST Interface


aidangnw

Recommended Posts

I use the PlasticSCM Jenkins plugin (v2) with Plastic v4.1.

When the plugin generates the changelog.xml it includes a list of items.

 

We use the Jenkins REST interface for another integration, but when it drills down into the job details, it encounters an exception.

If we remove any item tags from the items collection in the xml, then everything works OK.

 

I believe the PlasticSCM plugin provides both the reader (changesetreader.java) and writer(changesetwriter.java) for this file (and high level parse logic).

Link to comment
Share on other sites

  • 2 weeks later...
javax.servlet.ServletException: java.lang.IllegalArgumentException: wrong number of arguments
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:726)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
	at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:201)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
	at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:381)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:586)
	at org.kohsuke.stapler.Stapler.service(Stapler.java:217)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
	at com.marvelution.jenkins.plugins.jira.filter.ApplinksServletFilter.doFilter(ApplinksServletFilter.java:85)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99)
	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	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:118)
	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.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:47)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
	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:256)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: wrong number of arguments
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.kohsuke.stapler.export.MethodProperty.getValue(MethodProperty.java:66)
	at org.kohsuke.stapler.export.Property.writeTo(Property.java:114)
	at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:187)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:232)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:182)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:137)
	at org.kohsuke.stapler.export.Property.writeTo(Property.java:114)
	at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:187)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:232)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:169)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:137)
	at org.kohsuke.stapler.export.Property.writeTo(Property.java:114)
	at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:187)
	at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:182)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:232)
	at org.kohsuke.stapler.export.Property.writeValue(Property.java:137)
	at org.kohsuke.stapler.export.Property.writeTo(Property.java:114)
	at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:187)
	at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:182)
	at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:182)
	at org.kohsuke.stapler.export.Model.writeTo(Model.java:154)
	at org.kohsuke.stapler.ResponseImpl.serveExposedBean(ResponseImpl.java:267)
	at hudson.model.Api.doXml(Api.java:95)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	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:111)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
	... 81 more
 

Thanks Carlos...

It is strange..the changesetreader obviously works as the details are displayed in the Jenkins changes browser view without issue, but breaks the REST interface.

 

If I edit the item level xml out, REST works, as also does compiling the plugin with the parse of the item level xml commented out, but item level detail is lost in the browser view.

 

The actual error is a method/parameter exception, inside Jenkins.

 

It happens on multiple Jenkins/Plastic installations.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...