Group dropdowns for Notifications and Security Levels not sorted alphabetically if JIRA integrated with Crowd

XMLWordPrintable

    • Type: Bug
    • Resolution: Duplicate
    • Priority: Low
    • None
    • Affects Version/s: 3.11
    • Environment:

      Customer: JIRA 3.9.2 Enterprise
      Me: JIRA 3.11 Enterprise

    • 3.11

      The Group dropdowns are not sorted alphabetically in the following screens of JIRA instances that are integrated with Crowd:

      • Add Notification
      • Add User/Group/Project Role to Issue Security Level

      However they are in JIRA instances that are not integrated with Crowd.

      Presumably Crowd returns groups unsorted whereas the default database implementation returns them sorted.

      A support customer reported this problem and I verified it on one of our internal JIRA instances that is integrated with Crowd.

      The support customer suggests that the getGroups() methods for the above screens should have their getGroups() method changed from:

      public List getGroups()
      {
          return UserManager.getInstance().getGroups();
      }
      

      to:

      public List getGroups()
      {
          return new ArrayList(GroupUtils.getGroups());
      }
      

      since the GroupUtils.getGroups() method does a sort:

      public static Collection getGroups()
      {
          List groups = UserManager.getInstance().getGroups();
          sortGroups(groups);
          return groups;
      }
      

      The relevant classes for the screens are (by my reckoning):

      • com.atlassian.jira.notification.type.GroupDropdown
      • com.atlassian.jira.security.type.GroupDropdown

      I have not checked to see if the error exists in other Group dropdowns.

              Assignee:
              Unassigned
              Reporter:
              Ian Daniel [Atlassian]
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: