drools嵌套类的规则语法
问题描述:
关于流口水的新手问题。我正在尝试访问规则文件中的以下Java类。drools嵌套类的规则语法
Class A{
private String foo;
private SomeClass B;
//getter setter for foo and b
}
Class B{
private String bar;
private Integer value;
//getter setter for bar and value
}
在规则文件中,我想访问成员bar
。
到目前为止,这是我所: -
package demo;
import my.test.A;
import my.test.B;
rule "Rule1"
when
$varB : A.B(bar.equals("hello"))
then
$varB.setValue(1);
update($varB);
end
对于上述规则我得到这个错误 - "BuildError: Unable to resolve ObjectType A.B"
。我也尝试使用A.getB()
,这也没有帮助。任何想法它应该是什么?如果有问题,我正在使用eclipse drools插件。
我已经看过jboss规则docs,但它们没有涵盖那些很好的语法。有谁知道链接,我可以查找drools语法,以及如何像上面一样?
答
这可能是更好:
A(b.bar == "hello", $varB : b)
在DRL,==
意味着等于,不相同。 随着$varB : b
你做一些像B varB = a.getB();
+1:好知道。你知道任何学习drools规则语法的好链接吗? – CoolBeans 2011-04-06 13:54:46
您可以检查Drools示例的语法提示。 – 2011-04-07 10:56:23