Unable to create reciprocal link when creating application link
Platform notice: Server and Data Center only. This article only applies to Atlassian products on the Server and Data Center platforms.
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Problem
Application link cannot be created because one of the applications is unable to reach the other application.
From the UI we can see this message :
It has not been possible to retrieve the required information from http://XX.XXX.XXX.XX:8080. Therefore the link cannot be created. Click continue to be redirected back to http://XX.XXX.XXX.XX:8080. Click close to remain here
The following appears in the atlassian-jira.log
2016-09-15 14:49:18,821 http-nio-8080-exec-6 ERROR [o.a.c.c.C.[.[localhost].[/].[servlet-module-container-servlet]] Servlet.service() for servlet [servlet-module-container-servlet] in context with path [] threw exception
com.atlassian.templaterenderer.RenderingException: org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'auth/applink-missing.vm'
at com.atlassian.templaterenderer.velocity.one.six.internal.VelocityTemplateRendererImpl.render(VelocityTemplateRendererImpl.java:109)
at sun.reflect.GeneratedMethodAccessor347.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
...
Caused by: org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'auth/applink-missing.vm'
at org.apache.velocity.runtime.resource.ResourceManagerImpl.loadResource(ResourceManagerImpl.java:483)
at org.apache.velocity.runtime.resource.ResourceManagerImpl.getResource(ResourceManagerImpl.java:354)
2016-09-15 15:55:29,422 http-nio-8080-exec-17 ERROR andy_le 955x63x1 1mdg5bw 10.129.98.5 /rest/applinks/3.0/applicationlinkForm/manifest.json [c.a.a.c.rest.ui.CreateApplicationLinkUIResource] ManifestNotFoundException thrown while retrieving manifest
com.atlassian.applinks.spi.manifest.ManifestNotFoundException: java.net.SocketTimeoutException: Read timed out
at com.atlassian.applinks.core.manifest.AppLinksManifestDownloader.doDownload(AppLinksManifestDownloader.java:236)
...
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
Diagnosis
Environment
- There is a forward proxy configured
- There is a reverse proxy configured
Diagnostic Steps
- Check the JVM parameters from the setevn.sh file to see if Outbound HTTP and HTTPS Proxy for JIRA applications has been configured.
Cause
The outbound proxy is preventing the application to communicate the other application for the application link to be created successfully.
Resolution
Add the other application's URL to the Outbound HTTP and HTTPS Proxy for JIRA
For example if the base urls are :
- Jira Base URL : jira.atlassian.com
- Bamboo Base URL : bamboo.atlassian.com
Then the outbound proxy configuration should be :
JVM_SUPPORT_RECOMMENDED_ARGS="-Dhttp.proxyHost=proxy.example.org -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example.org -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts=localhost|jira.atlassian.com|bamboo.atlassian.com -Dhttps.nonProxyHosts=localhost|jira.atlassian.com|bamboo.atlassian.com"