JIRA Macro Issues does not render properly for logins containing white spaces

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. 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

When displaying JIRA Issues in a Confluence page, they will not render properly if the user login contains white spaces:

(Auto-migrated image: description temporarily unavailable)

The following appears in the atlassian-confluence.log:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 2014-05-12 11:41:58,239 ERROR [Jira macros executor:thread-4] [confluence.extra.jira.JiraIssuesMacro] throwMacroExecutionException Macro execution exception: -- referer: http://confluence:8090/ | url: /display/TES/Testing+Home | userName: admin | action: viewpage | page: 4030466 java.lang.IllegalArgumentException: Illegal character in query at index 208: http://jira:8080/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?jqlQuery=key+in+%28TEST-3%29&returnMax=true&field=summary&field=type&field=resolution&field=status&field=link&xoauth_requestor_id=d luvison at java.net.URI.create(URI.java:859) at com.atlassian.sal.core.net.HttpClientProtocolConfig.changeHostConfigurationProtocol(HttpClientProtocolConfig.java:43) at com.atlassian.sal.core.net.HttpClientProtocolConfig.configureProtocol(HttpClientProtocolConfig.java:20) at com.atlassian.sal.core.net.HttpClientRequest.configureProtocol(HttpClientRequest.java:532) at com.atlassian.sal.core.net.HttpClientRequest.setUrl(HttpClientRequest.java:135) at com.atlassian.sal.core.net.HttpClientRequest.setUrl(HttpClientRequest.java:71) at com.atlassian.plugins.rest.module.jersey.JerseyRequest.setUrl(JerseyRequest.java:57) at com.atlassian.plugins.rest.module.jersey.JerseyRequest.setUrl(JerseyRequest.java:21) at com.atlassian.applinks.core.auth.ApplicationLinkRequestAdaptor.setUrl(ApplicationLinkRequestAdaptor.java:134) at com.atlassian.applinks.core.auth.ApplicationLinkRequestAdaptor.setUrl(ApplicationLinkRequestAdaptor.java:20) at com.atlassian.applinks.core.auth.oauth.twolo.impersonation.TwoLeggedOAuthWithImpersonationRequest.signRequest(TwoLeggedOAuthWithImpersonationRequest.java:43) at com.atlassian.applinks.core.auth.oauth.OAuthRequest.execute(OAuthRequest.java:42) at com.atlassian.confluence.extra.jira.DefaultJiraIssuesManager.retrieveXML(DefaultJiraIssuesManager.java:92) at com.atlassian.confluence.extra.jira.CacheJiraIssuesManager.retrieveXML(CacheJiraIssuesManager.java:41) at com.atlassian.confluence.extra.jira.DefaultJiraIssuesManager.retrieveXMLAsChannel(DefaultJiraIssuesManager.java:174) at com.atlassian.confluence.extra.jira.JiraIssuesMacro.populateContextMapForStaticSingleIssue(JiraIssuesMacro.java:753) at com.atlassian.confluence.extra.jira.JiraIssuesMacro.createContextMapFromParams(JiraIssuesMacro.java:595) at com.atlassian.confluence.extra.jira.JiraIssuesMacro.execute(JiraIssuesMacro.java:1492) at com.atlassian.confluence.extra.jira.executor.StreamableMacroFutureTask.call(StreamableMacroFutureTask.java:36) at com.atlassian.confluence.extra.jira.executor.StreamableMacroFutureTask.call(StreamableMacroFutureTask.java:15) at java.util.concurrent.FutureTask.run(FutureTask.java:262) 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:745) Caused by: java.net.URISyntaxException: Illegal character in query at index 208: http://jira:8080/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?jqlQuery=key+in+%28TEST-3%29&returnMax=true&field=summary&field=type&field=resolution&field=status&field=link&xoauth_requestor_id=d luvison at java.net.URI$Parser.fail(URI.java:2829) at java.net.URI$Parser.checkChars(URI.java:3002) at java.net.URI$Parser.parseHierarchical(URI.java:3092) at java.net.URI$Parser.parse(URI.java:3034) at java.net.URI.<init>(URI.java:595) at java.net.URI.create(URI.java:857) ... 23 more

The above symptom will not affect users that do not have white spaces in their username.

Cause

This is a bug with the Application links plugin being unable to handle the white spaces during the information change process. This is currently being tracked in APL-1195 - Failed to use application link with user name of non Latin character or space.

Confluence and JIRA does not allow a login containing white spaces, unless you pull those from an external directory (AD/LDAP). If you have a user from AD/LDAP that contains white spaces, you will see this bug when trying to render JIRA issues in a page.

Workaround

Change the username to remove the white spaces in AD/LDAP and synchronize within Confluence. If that is not feasible, make sure to vote for the bug mentioned above and add your thoughts to it.

Updated on April 7, 2025

Still need help?

The Atlassian Community is here for you.