Complex workflow actions can be implemented in Java. Typical examples of complex workflow actions include storing data in a relational database or sending a message to a help desk system. These Java classes can be integrated with workflow using XPRESS.
<Activity name=’Log Status’> <Action> <expression> <invoke name=’logStatus’ class=’custom.OracleStatusLog’> <ref>accountId</ref> <ref>email</ref> <ref>status</ref> </invoke> </expression> </Action> <Transition to=’Next’/> </Activity>
In this example, the XPRESS invoke function is used to call a static method named logStatus, which is defined in the custom Java class custom.OracleStatusLog. Three arguments are passed to this method, the values of which are taken from workflow variables.
In these types of cases, the primary computation is performed in the Java class, while XPRESS acts to integrate the class into the workflow.