Uploaded image for project: 'Maven Changes Plugin'
  1. Maven Changes Plugin
  2. MCHANGES-413

Jira report throws NPE when the resolution field is missing the "name" attribute

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Duplicate
    • 2.12.1
    • None
    • jira
    • None

    Description

      The `jira-report` goal throws a NullPointerException when the resolution JsonNode has no "name" attribute.

      At Commons BCEL we had some tickets that were created from external issues. The priority field was set to an enum in [P0, P1, P2, P3, P4, P5]. See for example BCEL-4. This field did not use the standard [Major, Minor, etc] and may have been a custom field. (The details of how these tickets were created is unknown.) The "standard" priority field was missing and the data downloaded by the RestJiraDownloader had no "name" attribute for this node. Thus the NPE from this line:

      // Note: val is not null here
      issue.setPriority( val.get( "name" ).asText() );

      Patching the latest maven-changes-plugin to print all these offending tickets allowed them to be identified and corrected by adding a "standard" priority. In the example mentioned (BCEL-4) there are still two priority fields in the ticket.

      Note that when the missing priority was ignored the Jira report completed successfully.

      The solution is either:

      • Patch the RestJiraDownloader to be robust to this field missing the expected data
      • Label as not-a-bug because this field is mandatory and BCEL has somehow created invalid Jira tickets in the past

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              aherbert Alex Herbert
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: