JIRA Project Tab Panel Query String Issue

Akira Tsuchiya
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 8, 2013

When you go to the Project Tab Panels and click the 'Summary',
the URL below is requested.

http://localhost:8080/browse/LUM#selectedTab=com.atlassian.jira.plugin.system.project%3Asummary-panel

But the '#' must be '?' because HTTP Request Query String begins with '?'.

Due to this problem, a JIRA plugin does not work correctly when it uses a web-resource defined in the atlassian-plugin.xml.

When the line below is described in the velocity, the 'test-resource' is not loaded in the web page.

$webResourceManager.requireResource("[Plugin Key]:test-resources")

When the project tab is clicked twice, the query string begins with '?' and the web resource is correctly loaded.

I want to know how to workaround this issue.

1 answer

1 accepted

0 votes
Answer accepted
Penny Wyatt (On Leave to July 2021)
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 21, 2013

Hi Akira,

This behaviour is by design - the selected tab is specified in a URL fragment because it is rendered client-side, not server-side. This makes it much faster to switch between tabs on the project page, as only the content of the tab needs to be reloaded, not the whole page.

As with custom field resources, this means there is no opportunity for the server to provide the required resources for the tab being switched to. The solution for plugin developers is the same as for custom fields, and is documented here - https://developer.atlassian.com/display/JIRADEV/Custom+Fields+that+use+CSS+or+JavaScript+Web+Resources+in+JIRA+5.0

For custom fields, we recommended putting resources in "atl.general", because the "Create Issue" dialog can appear on any screen in JIRA. In your case, I think you should be able to just include your script in the "jira.browse.project" context - but try it out, as I'm not 100% certain it will include it on every tab of that page too.

Suggest an answer

Log in or Sign up to answer