个人理解:
Expression:执行一个动作,类JSF语言。#{}来取值,而且可以直接引用上下文中的变量。
这个是在decision中写的例子:#{cond>500?"toA":"toB"}
Script:直接写java代码吧。beanshell
他们都有自己的默认变量,比如:node ,taskInstance , executeContext等等。
这两个东西应该仔细挖掘一下。因为能够使工作流方便管理,不用附加很多的类来支持。同时也支持定制。
关于Beanshell这个开源项目,比较有意思,可以动态执行一些java代码。但是非常影响性能。