Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

jenkins integration with jira ( atlassian cloud)

Yugendra September 9, 2025

Subject: Jenkins–Jira Integration Issue


Hi,

The main purpose of this integration is to visualize the build status in Jira when a Jenkins build is initiated, using the Jira key and Deployment panel. I have created a key and configured the webhook, but I am encountering an error on the Jenkins side.

The issue seems related to Atlassian Cloud: version 2.015 is not supported, so I manually installed version 2.014. However, when I test the connection and try to save, I get the following error:

Error Saving Connection

JSONObject["sites"] is not a JSONArray.

I have tried removing the old configuration and restarted the Jenkins server, but the error persists.

Could you please advise on how to resolve this issue?

1 answer

0 votes
Mark Rekveld - Marvelution
Community Champion
September 9, 2025

Hi @Yugendra 

Welcome to the community.

Disclaimer up front: I'm the developer and maintainer of the Jenkins for Jira app.

Going from your message I searched for the Atlassian Cloud version 2.015, but was not able to locate this app/plugin. Can you point me to it?

Knowing what plugin/app you are using will help in finding out what the problem is.

Cheers,
Mark

Yugendra September 9, 2025

Hi Mark,

Thanks for the reply first I have installed atlassian cloud 2.0.15. However it didn't work so, I have added 2.0.14 facing the above issue.

 Sorry, its 2.0.15 

Mark Rekveld - Marvelution
Community Champion
September 9, 2025

Found it.

I don't see any thing that stands out as to why its not working for you.

Have you tried deleting any existing files related to the plugin?

The error to  me sounds like a failure to read the configuration when the plugin starts.

Yugendra September 9, 2025

Firstly, I have installed 2.0.15. It was not working showing error null obj, Then did some R & D and depreciated plugin to 2.0.14 then above error was come across.

Logged in to jenkins server removed all files which are related to plugin, uninstall 2.01.4. Restarted jenkins freshly installed plugin again encountered same error.

Mark Rekveld - Marvelution
Community Champion
September 10, 2025

Does the plugin write any additional information to the log file of Jenkins?

Hopefully this will disclose where the issue is occurring and make it easier to find how to resolve the issue.

Yugendra September 10, 2025
Sep 10, 2025 6:39:02 PM SEVERE com.atlassian.jira.cloud.jenkins.config.ConfigManagementLink doSaveConfiguration
Connection to Jira site failed
net.sf.json.JSONException: JSONObject["sites"] is not a JSONArray.
 at net.sf.json.JSONObject.getJSONArray(JSONObject.java:2000)
 at PluginClassLoader for atlassian-jira-software-cloud//com.atlassian.jira.cloud.jenkins.config.ConfigManagementLink.sendConfigDataToJira(ConfigManagementLink.java:137)
 at PluginClassLoader for atlassian-jira-software-cloud//com.atlassian.jira.cloud.jenkins.config.ConfigManagementLink.doSaveConfiguration(ConfigManagementLink.java:234)
 at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732)
 at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:484)
 at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:497)
 at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:79)
 at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
 at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:218)
 at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:140)
 at org.kohsuke.stapler.MetaClass$12.doDispatch(MetaClass.java:686)
 at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:61)
 at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:800)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:938)
 at org.kohsuke.stapler.MetaClass$10.dispatch(MetaClass.java:590)
 at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:800)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:938)
 at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:871)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:938)
 at org.kohsuke.stapler.MetaClass$10.dispatch(MetaClass.java:590)
 at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:800)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:938)
 at org.kohsuke.stapler.Stapler.invoke(Stapler.java:721)
 at org.kohsuke.stapler.Stapler.service(Stapler.java:253)
 at Jenkins Main ClassLoader//jakarta.servlet.http.HttpServlet.service(HttpServlet.java:587)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHolder.handle(ServletHolder.java:765)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1668)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:204)
 at io.jenkins.servlet.FilterChainWrapper$2.doFilter(FilterChainWrapper.java:53)
 at PluginClassLoader for blueocean-jwt//io.jenkins.blueocean.auth.jwt.impl.JwtAuthenticationFilter.doFilter(JwtAuthenticationFilter.java:60)
 at io.jenkins.servlet.FilterWrapper$1.doFilter(FilterWrapper.java:42)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)
 at io.jenkins.servlet.FilterChainWrapper$2.doFilter(FilterChainWrapper.java:53)
 at PluginClassLoader for sse-gateway//org.jenkinsci.plugins.ssegateway.Endpoint$SSEListenChannelFilter.doFilter(Endpoint.java:248)
 at io.jenkins.servlet.FilterWrapper$1.doFilter(FilterWrapper.java:42)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)
 at io.jenkins.servlet.FilterChainWrapper$2.doFilter(FilterChainWrapper.java:53)
 at PluginClassLoader for blueocean-web//io.jenkins.blueocean.ResourceCacheControl.doFilter(ResourceCacheControl.java:134)
 at io.jenkins.servlet.FilterWrapper$1.doFilter(FilterWrapper.java:42)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)
 at io.jenkins.servlet.FilterChainWrapper$2.doFilter(FilterChainWrapper.java:53)
 at PluginClassLoader for monitoring//net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:239)
 at PluginClassLoader for monitoring//net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:215)
 at PluginClassLoader for monitoring//net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:88)
 at PluginClassLoader for monitoring//org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:121)
 at io.jenkins.servlet.FilterWrapper$1.doFilter(FilterWrapper.java:42)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)
 at io.jenkins.servlet.FilterChainWrapper$2.doFilter(FilterChainWrapper.java:53)
 at PluginClassLoader for metrics//jenkins.metrics.impl.MetricsFilter.doFilter(MetricsFilter.java:125)
 at io.jenkins.servlet.FilterWrapper$1.doFilter(FilterWrapper.java:42)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)
 at io.jenkins.servlet.FilterChainWrapper$2.doFilter(FilterChainWrapper.java:53)
 at PluginClassLoader for greenballs//hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:64)
 at io.jenkins.servlet.FilterWrapper$1.doFilter(FilterWrapper.java:42)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)
 at jenkins.util.HttpServletFilter$1.doFilter(HttpServletFilter.java:77)
 at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)
 at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:207)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at jenkins.ErrorAttributeFilter.doFilter(ErrorAttributeFilter.java:29)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:154)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:94)
 at jenkins.security.AcegiSecurityExceptionFilter.doFilter(AcegiSecurityExceptionFilter.java:52)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:54)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
 at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:114)
 at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:105)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227)
 at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:98)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:117)
 at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
 at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:63)
 at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)
 at hudson.security.ChainedServletFilter2.doFilter(ChainedServletFilter2.java:111)
 at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:173)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at org.kohsuke.stapler.UncaughtExceptionFilter.doFilter(UncaughtExceptionFilter.java:26)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:86)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:31)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at jenkins.security.SuspiciousRequestFilter.doFilter(SuspiciousRequestFilter.java:38)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler.doHandle(ServletHandler.java:526)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.handle(ScopedHandler.java:127)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.security.SecurityHandler.handle(SecurityHandler.java:574)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HandlerWrapper.handle(HandlerWrapper.java:124)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextHandle(ScopedHandler.java:197)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.SessionHandler.doHandle(SessionHandler.java:612)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextHandle(ScopedHandler.java:195)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.doHandle(ContextHandler.java:1045)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:164)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler.doScope(ServletHandler.java:483)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:162)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.SessionHandler.doScope(SessionHandler.java:589)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:162)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.doScope(ContextHandler.java:966)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.handle(ScopedHandler.java:125)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.handle(ContextHandler.java:1719)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1564)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel.dispatch(HttpChannel.java:723)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel.handle(HttpChannel.java:511)
 at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler$CoreContextHandler$CoreToNestedHandler.handle(ContextHandler.java:2943)
 at Jenkins Main ClassLoader//org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1064)
 at Jenkins Main ClassLoader//org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:611)
 at Jenkins Main ClassLoader//org.eclipse.jetty.server.Server.handle(Server.java:182)
 at Jenkins Main ClassLoader//org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:662)
 at Jenkins Main ClassLoader//org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:416)
 at Jenkins Main ClassLoader//org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)
 at Jenkins Main ClassLoader//org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)
 at Jenkins Main ClassLoader//org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:480)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:443)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:201)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209)
 at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164)
 at java.base/java.lang.Thread.run(Thread.java:840)

Mark Rekveld - Marvelution
Community Champion
September 11, 2025

Taking a look at the error and the code I would say that the plugin can be installed, but when you attempt to save the configuration the plugin is able to store the configuration locally, but fails to send the configuration to Jira.

I would suggest opening a ticket in the Github repo of the plugin here https://github.com/jenkinsci/atlassian-jira-software-cloud-plugin/issues

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
PRODUCT PLAN
STANDARD
PERMISSIONS LEVEL
Product Admin
TAGS
AUG Leaders

Atlassian Community Events