Resolving a "The expression syntax is invalid" Error During the UpgradeDDMStructure Phase of the Liferay DXP Upgrade Process.

This article describes a known issue in the Forms portlet when upgrading from DXP 7.0 to DXP 7.1+. During the upgrade, a validation error is thrown as follows: Unable to upgrade the visibility expression "equals(Options, "Others") then abc" to a form rule

Continuing on: com.liferay.dynamic.data.mapping.expression.DDMExpressionException$InvalidSyntax: The expression syntax is invalid.

Resolution

Status: Open/Verified

The reason why this error is thrown is due to the upgrade process' validation check against existing form data. While this specific syntax may have been permitted in a previous version of Liferay, or in a previous patch version of the earlier version of Liferay, subsequent DXP versions (7.1+) of Liferay identify it as invalid syntax.

Liferay Engineering is aware this is a bug; expressions that are valid in DXP 7.0 should not become invalid in DXP 7.1+, but should instead be supported. See LPS-89933.

For a short-term resolution, go back to your current pre-upgrade environment and modify the form which contains the problematic syntax:

  1. Remove the expression prior to the upgrade to DXP 7.1+ version.
  2. Run the upgrade to DXP 7.1+
  3. Once you are in DXP 7.1+, add the expression with the valid syntax for this product version.

For a long-term resolution, please wait for the final resolution of LPS-89933.

Was this article helpful?
0 out of 0 found this helpful