Web panel on the JIRA Service Desk - Customer portal requires a manual browser reload to display

I have a web panel on JIRA Service Management - Customer Portal, which doesn’t load automatically on navigating to the request creation page but on manual browser reload the web panel comes up. The web panel is working till JIRA version 8.13.

With the JIRA version 8.14 and JIRA Service Management version 4.14 and later, this problem of browser reload came up.

Just to elaborate on the issue more. JSM customer portal provides three screens that a customer need to go through to create a request ticket.

  1. Help center page for the project

  2. Request creation page

  3. Request page

The same web panel is shown on each screen. Web panel loads properly on the 1st and 3rd screen but fails at the 2nd screen.

public class ContextProviderServiceDesk implements ContextProvider {

  @Override
  public Map<String, Object> getContextMap(Map<String, Object> context) {

     // logic using context map - this is provided by atlassian
     // This map provides a 'serviceDesk' key which give project related information 
     // Like project-id, project-key
     // Logic uses this project-id

  }
}

On further debugging, I found that this context Map which JIRA Context Provider provides, is showing non-consistent results. Basically, when you navigate from 1st screen to 2nd screen the context map is not having the ‘serviceDesk’ key but as soon as you reload the page the context map starts showing the ‘serviceDesk’ key. This behavior starts happening from 8.14 onwards. Since I need this key to get the project related details like project-id, project-key etc, to use it for the web panel logic.

But why a manual reload is required to get the complete context map values, why isn’t they are working on the first go when we navigate from 1st screen to 2nd screen.

1 Like