Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This article describes how to display a custom error message on the service desk request creation screen while using the Scripted Groovy validator. This is because Jira Service Desk does not display validator messages properly. (https://jira.atlassian.com/browse/JSDSERVER-5822). There are two approaches to handle this. In both the approaches, the configured error message is appended to the default error message of Jira as shown below:

Use ‘For Field’ and display message against the field

This approach is best suited when you are validating the a single field value. For example, you want to check during the request creation that the Component/s of the issue is “Database” only.

  1. In the Scripted Groovy Validator add the Groovy script. For example:

    Code Block
    issue.getAsString("components") == "Database"
  2. Input the Error message as The Components should be Database

  3. Select the Component/s field under “For field”

  4. Save the validator and publish the workflow

Now when you create the request from the portal the validation message “Please enter Component/s field” is appended to the default message.

Use Map<String,String> to display error message against fields

This approach is best suited when you want to display a different custom message for each conditionmultiple conditions. For example, while requesting an account you want to validate that an assignee is selected and belongs to a specific group. And you would want to return custom error messages based on the selections. Use Map<String,String> where each key is a field name or ID and the corresponding value is the error message to display for that field.

  1. In the Scripted Groovy Validator add the Groovy script.

    Code Block
    if(!issue.get("assignee"))
    ["assignee":"Assignee field is mandatory"]
    if (issue.getAsString("System") == "Billing Services" && !issue.assignee.isInGroup("billing"))
    ["assignee":"Assignee should belong to Billing Services group"]
    if (issue.getAsString("System") == "Financial Services" && !issue.assignee.isInGroup("finance"))
    ["assignee":"Assignee should belong to Financial Services group"]
  2. Save the validator and publish the workflow

Now when you create the request from the portal the validation message is appended to the default message.

Filter by label (Content by label)
showLabelsfalse
max5
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@22cf51
showSpacefalse
sortmodified
typepage
reversetrue
labelskb-how-to-article jmwe-server
cqllabel in ( "kb-how-to-article" , "jmwe-server" ) and type = "page" and space = "JMWE"
Page Properties
hiddentrue

Related issues