2016-11-04 53 views
0

我想在我的drl文件中声明一个布尔变量,并且想要根据该变量的值编写规则。我无法找到任何这方面的好例子。布尔变量的流水规则

我试图像:

声明标志 标志:布尔 端

在规则中的一个,我喜欢修改:

标志= Boolean.TRUE;

,我的原则是

规则“< 210>确定标志” 时 标志(标志==真)

但它给我的错误作为标志不能得到解决。

回答

2

你不能以通常的方式声明变量(我认为)你正在尝试这样做。请阅读Drools文档并区分绑定变量,全局变量,事实及其字段和右侧局部变量(如在静态Java方法中)。

要了解如何declare用布尔野外工作,使用下面的代码DRL:

declare Flag 
    flag: Boolean 
end 

rule "hoist a Flag" 
when 
    not Flag() 
then 
    insert(new Flag(true)); 
end 

rule "a true Flag" 
when 
    Flag(flag) 
then 
    System.out.println("The Flag.flag is true."); 
end