LSPS documentation logo
LSPS Documentation
Validation

Disambiguation note: This section describes the validation of all model resources in PDS, such as, syntax of expressions, missing module imports, return values for element properties, etc. If this is not the topic you looking for, consider the following:

Validation in PDS checks the language and modeling correctness of the saved workspace data. Note that closed projects, non-executable Processes and contents of non-main Pools are not validated. When it detects a problem, it assigns it severity and renders the problem marker on all visualizations of the element and all its parent modeling elements:

  • Errors : severe mistakes that prevent the compilation and deployment
  • Warnings : issues that may affect execution and cause undesired behavior but are generally harmless; for example, a missing value of a parameter, which is interpreted automatically as null.
  • Infos are notifications of non-standard situations, which influence neither the validity nor further deployment. Infos occur, for example, if a modeling element is present in the process definition, but does not appear in any Diagram.

The severity of a detected problem is generally assigned automatically but in some cases you can define the severity yourself.

Your workspace is by default validated automatically on each save and before module upload. You can trigger validation also manually: right-click the node in the GO-BPMN Explorer and click Validate in the context menu.

If your resource has validation problems even though the expressions are correct, try cleaning the project: on the main menu, go to Project -> Clean

To turn automatic validation off on a particular project, on the main menu, go to Project and unselect Build Automatically.

The detected problems are listed in the Problems view. The type of individual problems displayed in the view may differ, though mostly it has the “GO-BPMN Problem” value; for information about other problem types refer to www.help.eclipse.org or documentation of the respective plug-in.

Configuring Validation

You can configure the severity of some of the problem that validation checks:

  1. Click Window > Preferences.
  2. In the Preferences dialog box in the left pane, expand Process Design Suite.
  3. Expand Modeling and click Validation.
    validationSetting.png
    Validation page with predefined settings
  4. Set the severity of individual problems:
    • General:
      • Usage of deprecated element: an element with the flag Deprecated is used
      • Non-localized string: a String that is not marked as not-localizable
    • Expressions:
      • Usage of deprecated equals: = is used as an equal sign (== is preferred)
      • Duplicate switch case: the case value is used in another case already
      • Potential NullParameterError: the call might receive a null argument
      • Unnecessary cast or instanceof: redundant casting or type check
      • Unused local variable: variable that is never used
      • Unused function parameter: function parameter in the function definition is never used
      • Ignored return value of function or expression without side effects: return value is not used
      • Usage of Null return type: function has Null as its return type (void is preferred)
      • Uninitialized record field: a record field is never initialized
      • Uninitialized variable: the variable is never initialized
      • Side-effect expression: an expression that does one of the following:
        • modifies a variable outside of its scope
        • creates a shared record
        • modifies a record field
        • calls an expression that causes a side effect.
    • UI forms:
      • Unused form variable in UI forms: the form variable is never used
      • Missing max-text-size hint: the max-text-size hint is not defined for the input component
      • Mismatch of max-text-size and DB mapping text length: the max-text-size setting on the form component violates the text length set on the shared record field.
      • Redundant custom property: property of the custom component is not present in the underlying Record
    • Process:
      • Unused process variable: process variable is never used
      • Unspecified non-required task parameter: optional parameter of the task has no values
      • Missing exclusive gateway default flow: exclusive gateway does not a default outgoing flow (none of the flows might be taken.)
    • Database:
      • Database object name length: maximum database name of a column, table, foreign keys, etc.

        This setting is primarily intended for Oracle databases, which do not allow names longer than 30 characters.

      • Missing DB index for data relationship: the relationship is not indexed in the database
  5. Click the respective severity level for the described problem.
  6. Provide the maximum length allowed for a database object (if exceeded, by some data types, the validation detects a problem).
  7. Click Apply or OK.

Validating Old Modules

Imported GO-BPMN Modules created in older versions of the Process Design Suite may not be validated automatically. To enable validation of older modules, do the following:

  1. Click Project -> Configure GO-BPMN Validator.
  2. Click OK.

Any old GO-BPMN modules in the workspace are added to the validation scope.

Hiding Validation Markers

To hide problem markers in a diagram editor (markers remain visible in the GO-BPMN Explorer and other views), do the following:

  1. Click Show Diagram Items ( ) button on the main toolbar.

    The button is available only when a diagram editor is focused.

  2. Unselect Show Validation Errors/Warnings.