#Check that a process can run
Chester validates an executable process while you model it, marks what is missing, and refuses to deploy a process whose elements have errors.
#Errors and warnings
flowchart LR
M["You change the diagram<br/>or an element's settings"] --> V["Validation runs"]
V --> E{"Any errors?"}
E -- "yes, in an element" --> X["Process is Invalid<br/>Deploy is refused"]
E -- "yes, only in the structure" --> S["Still Valid ⚠️<br/>Deploy goes ahead"]
E -- "no" --> W{"Any warnings?"}
W -- "yes" --> OK1["Process is Valid<br/>warnings stay visible"]
W -- "no" --> OK2["Process is Valid<br/>No issues"]
Every problem is one of two kinds:
- An error means the process cannot run as it stands: a required setting is empty, an element is not connected, an expression cannot be evaluated. While an element has an error, the process is Invalid and cannot be deployed — with one exception, see Deploy only what validates.
- A warning points at something that is probably a mistake but does not stop the process from running — a gateway without a default path, two sequence flows between the same two elements, a path that never reaches an end event. Warnings do not block deployment.
Only an executable process is validated. A documentation-only process always counts as valid — see Process master data.
#Find what is missing
In the editor, the badge at the bottom left of the canvas counts the open problems. It reads No issues when there are none.
Click the badge to open the list: errors and warnings are counted separately at the top, and each entry names the element it is about. Click an entry to select that element and see its settings in the properties panel. The Close button folds the list away again.
Inside the properties panel, a group with a green tick is complete.
On the process's Details tab, the Validation card shows whether the elements are valid — Valid or not — as of the last save. It does not include the structure checks; see below.
⚠️ The problem texts are German, whatever the language of the screen — for example
"… hat keinen Vorgänger" for an element without an incoming flow, or "Formular ist
nicht ausgewählt" for a user task without a form. An element without a name is named by
its id, such as Activity_1uhzq23.
#What is checked
| Check | Examples |
|---|---|
| The structure of the diagram | Every element has an incoming and an outgoing flow; everything can be reached from a start event; a start event has no incoming flow; link events come in matching pairs |
| Each element's required settings | A service task has a system, an adapter, an action and an environment; a user task has a form and an assignment |
| Expressions | An expression is valid and refers only to data that exists at that point of the process |
| Elements Chester cannot run | An element the palette offers but the engine does not execute — see Elements |
| References to other elements | A mapping or expression that uses another element's data points at an element that exists in the diagram |
#Deploy only what validates
Deploy checks again, on the server, before it creates a deployment — against the diagram as you last saved it, not what is on your screen. A process whose elements have errors is refused.
⚠️ That check covers each element's own settings, but not the structure of the diagram. An element without an incoming or outgoing flow, or a part of the diagram that no start event reaches, is listed as an error in the editor — yet it does not stop a deployment, and the Validation card on the Details tab still says Valid. Clear the structure errors in the list yourself before you deploy.
See Deploying a process.
