Spring Expressions

We support the use of Spring expressions in Enterprise. The same objects available in the JBPM context are also available in the Spring context. This means that the same objects can be used for Spring expressions as well.

Spring expressions should start with #{ and end with }. When Spring expressions are enabled, it is possible to use # instead of $.

Note: Spring Expressions are not currently supported in configuration fields for actions created using the Job Execution Framework.
Note: Objects in the expression language are based on the internal Ooyala Flex object model, and not the API model.
Note: For more information, please see the official Spring documentation. This official documentation focuses on the advanced features of Spring expression language, please see the official Spring Expression guide: https://docs.spring.io/spring/docs/4.3.15.RELEASE/spring-framework-reference/html/expressions.html
Note: You must use #{variables['<variable name>']} instead of ${variables.<variable name>} for workflow variables.
Note: You can combine the current expression language with Spring expression language in different fields.

Examples:

Table 1.
Description JBPM Expressions Spring Expressions
User Enabled Event Handler ${event.flexManagedObject.id} #{event.flexManagedObject.id}
Password Reset Event Handler ${event.mioObject.name} #{event.mioObject.name}
Execute Launch Workflow with an import action ${variables.externalFileName} #{variables['externalFileName']}
Executes a Segmented Proxy action via a workflow ${variables.videoAssetIds} #{variables[‘videoAssetIds’]}
Executes a Segmented Proxy action via a workflow ${variables.audioAssetId} #{variables['audioAssetId']}
Applies a run-rule expression in a Copy action details page ${asset.mioObject.approved} #{asset.mioObject.approved}
Defines an expression in a path (VFS location) field for a Copy action and provide the actual path "/flex/flex-enterprise/storage /media/Essence" in the asset description ${asset.description} #{asset.description}
Returns the ID of a user ${user.id} #{user.id}
Returns the first name of a user ${user.firstName} #{user.firstName}
Returns the last name of a user ${user.lastName} #{user.lastName}
Returns the company of a user ${user.company} #{user.company}
Returns the email address of a user ${user.email} #{user.email}
Returns the name of a UDO ${object.name} #{object.name}
Returns the title of an asset ${asset.title} #{asset.title}
Returns active proxies for a file asset ${asset.getActiveProxies} #{asset.getActiveProxies}
Returns the ID of an event (Used on event handlers) ${event.id} #{event.id}
A boolean expression on an event handler ${event.flexManagedObject.variant.name == "Media"} #{event.flexManagedObject.variant.name == "Media"}
Returns the ID of a job ${job.id} #{job.id}
Returns the due date of a job ${job.dueDate} #{job.dueDate}
Returns the start date of a job ${job.startDate} #{job.startDate}
Returns the end date of a job ${job.endDate} #{job.endDate}
Returns the priority of a job ${job.priority} #{job.priority}
Returns the current state of a job ${job.jobState} #{job.jobState}
Returns the ID of a workflow ${workflow.id} #{workflow.id}
Obtains the value of a workflow variable with this name (This can be a string, object, or date) ${variables.varName} #{variables['varName']}
Returns the current version of a workflow ${workflow.version} #{workflow.version}
https://help.ooyala.com/sites/all/libraries/dita/en/media-logistics/flex/dev/70/spring_expressions.html

Was this article helpful?