第 9 章 约束(constraint)


约束是一个布尔值表达式,在执行包含约束的元素时评估。您可以在流程的不同部分使用限制,比如在分散网关中使用限制。

Red Hat Process Automation Manager 支持两种类型的限制,包括:

  • 代码约束 :在 Java、Javascript、Drools 或 MVEL 中定义的限制。代码约束可以访问工作内存中的数据,包括全局和进程变量。以下代码约束示例包含 作为进程中的变量:

    Java 代码约束示例

    return person.getAge() > 20;
    Copy to Clipboard Toggle word wrap

    MVEL 代码约束示例

    return person.age > 20;
    Copy to Clipboard Toggle word wrap

    Javascript 代码约束示例

    person.age > 20
    Copy to Clipboard Toggle word wrap

  • 规则限制 :以 DRL 规则条件的形式定义的限制。规则约束可以访问工作内存中的数据,包括全局变量。但是,规则限制无法直接访问进程中的变量,但使用进程实例。要检索父进程实例的引用,请使用类型 workflow ProcessInstance 的 processInstance 变量。

    注意

    您可以将进程实例插入到会话中,并根据需要更新它,例如,使用 Java 代码或一个 On-entry、on-exit 或显式操作。

    以下示例显示了规则约束,搜索名称与进程中 name 的值相同的人。

    带有进程变量分配的规则约束示例

    processInstance : WorkflowProcessInstance()
    Person( name == ( processInstance.getVariable("name") ) )
    # add more constraints here ...
    Copy to Clipboard Toggle word wrap

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat