KB-1458 HTTP 500 Error Thrown on Forms When Trying to Add validationGroup

Symptoms

Appian throws an HTTP 500 error when the user attempts to add a validationGroup property to the a!buttonWidgetSubmit. However, this appears to only happen when the property is added before the saveInto property, and beneath the label property.

More specifically, the user will see this error if validationGroup is added before saveInto without adding an ending comma.  Appian throws the following HTTP 500 error:

 

An example of the code that might throw this error is the following:

load(
  local!button,
  a!formLayout(
    label: "Label",
    contents: {},
    buttons: {
      a!buttonLayout(
        primaryButtons:  {
          a!buttonWidgetSubmit(
            label: "Submit",
            validationGroup: "test",
            saveInto: {
              a!save(local!button, 1)
            }
          )
        }
      )
    }
  )
)

This error is only thrown when validationGroup is being typed out in the position in between label and saveInto. If one copies and pastes this code into an Interface Designer, for example, the error will not be reproduced.

Cause

The set up passes a list of 'Expression Tree' to validationGroup, which is not being converted to a string correctly and throws this error during a JSON conversion.

Action

Add the validationGroup property after saveInto. This can be achieved in the following way: 

load(
  local!button,
  a!formLayout(
    label: "Label",
    contents: {},
    buttons: {
      a!buttonLayout(
        primaryButtons:  {
          a!buttonWidgetSubmit(
            label: "Submit",
            saveInto: {
              a!save(local!button, 1),
              validationGroup: "test"
            }
          )
        }
      )
    }
  )
)

Here, validationGroup is placed after saveInto, and so this error will not show up.

Affected Versions

This article applies to Appian 17.2 and later.

Last Reviewed: January 2018

Related
Recommended