Component validity¶
Introduction¶
Components must be valid in order to be deployed. This page covers how to identify invalid components and view the validation errors associated with them, as well as how to resolve validation errors.
Validation errors¶
This section covers how to identify invalid project components and view the validation errors associated with invalid components.
For new projects, invalid items are highlighted by default on the design canvas, with the default selection of Highlight Invalid Items. To turn off this option, clear this selection:
When Highlight Invalid Items is selected, invalid components are outlined with a red border on the design canvas:
In the project pane, the names of invalid components also appear in italics and the color red. In addition, invalid components that have an implicit error are shown with an error icon. This icon does not display if the reason the component is invalid is because it contains other components with implicit errors. For example, a workflow may be invalid because it contains operations or other components that are invalid, or an operation may be invalid because it contains other components that are invalid, as shown below:
To display validation errors for components identified as implicitly invalid, click the error icon next to the component name. A dialog displays the validation errors for the component. For detailed information on what causes components to be invalid and how to resolve validation errors, see Validation rules, next.
Validation rules¶
Certain validation rules must be followed for project components to be deployed to the Harmony cloud and for operations they are used within to be executed on Jitterbit agents. These rules ensure that all parts of a project are supported and expected by the agent. Validation rules for workflows and operations are covered on these pages:
The rules for other individual project components are detailed as follows.
Names must be unique¶
Names of some types of project components must be unique for each type of component.
Depending on which component is invalid, the appropriate variation of this error message is returned if this rule is not met:
[Operation / Connection / Activity / Transformation / Script / Email / Variable] names must be unique.
When creating a new project component from scratch, the field validation included within the component configuration screen will not allow you to provide the same name for multiple project components. However, you may receive this error message if, for example, you have imported a project that contains components with duplicate names.
If you receive one of these errors, check to make sure you have given a unique name to each project component and rename any duplicates where necessary. Documentation links for each project component are provided on the Project components page.
Project components must be valid¶
The validation rules depend on the type of component.
Activities¶
In order for an activity to be valid, it must be configured properly. If an activity has not been configured or is misconfigured, this validation error message is returned:
Activity is not configured properly.
This message appears in a few common scenarios:
- When new activities are added to an operation from the design component palette, they are are not yet configured, so you may receive this error message if you added a new activity without configuring it yet. To resolve, open the activity configuration screen and configure the activity.
- If the activity is partially configured, or if the individual field validation within the activity configuration has not been met, you may also receive this error message. To resolve, open the activity configuration and complete all required fields with valid input.
Some connectors are available and can be used only in environments associated with a private agent group. Although new connections and activities cannot be created using these connectors on cloud agents, it is possible to migrate or import projects created with these connectors to a cloud agent environment. In this situation, connections and activities created using private agent-only connectors are invalid, with this error message:
Connector is only available on private agents.
Activities can be subject to their own unique validation rules, which are covered in the activity's documentation. For example, one such activity is the Acknowledge activity for the RabbitMQ connector.
If an activity is invalid for some other reason that cannot be readily determined, this error message is returned:
Activity is invalid.
To resolve, reference the documentation for each activity available under Connectors.
Scripts¶
In order for a script to be valid, it must be configured properly. If a script has not been configured, this validation error message is returned:
Script is not configured properly.
This message most commonly appears when you have added a new script to an operation and it is empty. To resolve, open the script configuration screen and then build a script in the editor.
In addition, in order for a Jitterbit Script to be valid, it must not have any validation errors within the script itself. If a Jitterbit Script contains validation errors, either a specific validation error message or this validation error message is returned:
Script is invalid.
To resolve, open the script editor and view the script errors. We also recommend testing the script to ensure its output is as expected. Additional documentation is available under Scripts.
Note
A configured JavaScript can be deployed with validation errors present.
Transformations¶
In order for a transformation to be valid, it must be configured properly. If a transformation has not been configured or is misconfigured, this validation error message is returned:
Transformation is not configured properly.
This message most commonly appears when you have added a new transformation to an operation and it has not been configured yet. To resolve, open the transformation configuration screen, then configure the transformation accordingly.
In addition, in order for a transformation to be valid, it must not have any validation errors within the transformation itself. To be considered valid, a transformation must meet these rules:
- A mapping cannot contain references to non-existent fields or variables.
- A mapping cannot contain data type conflicts.
- A target loop node cannot have multiple sources.
- A schema must be provided for an adjacent source or target activity.
In addition, certain target fields may require a mapping, or may not allow a mapping. Invalid mappings are visually indicated within the transformation configuration screen (see Transformation mapping validity).
Depending on the error, the appropriate variation of these possible error messages is returned if this rule is not met:
Mapping refers to a non-existent [source / target / variable] field $[path].
Potential data type conflict in mapping.
Target field $[node.name] [must be mapped / cannot be mapped].
Mappings of a target loop node depend on more than one source loop node.
[Source / Target] schema must be provided.
To resolve, try these troubleshooting tips:
- If you have references to non-existent fields, data type conflicts, or other invalid mappings, either find the invalid mapping and unmap it or check the schema to make sure all fields are accounted for and have compatible data types. If you have references to non-existent variables, check to make sure the variable exists.
- If you have a target loop node that depends on more than one source loop node, follow the instructions provided in Map from a multi-instance source to single-instance target under Data structures.
- If you have source or target activities adjacent to the transformation, make sure you provide a schema for each one. File schemas can be provided from within the activity itself during its configuration (see documentation for each connector), or by defining a schema from directly within the transformation.
In addition, if a transformation is invalid for some other reason that cannot be readily determined, this error message is returned:
Transformation is invalid.
For more detailed information, see Transformation mapping validity, as well as additional pages under Transformations.