在流口水规则中是否可以使用其他规则来验证对象字段?

时间:2019-01-22 08:02:26

标签: drools

情况是这样的:

我有一个对象X和Y:

class X{
   String name;

//setters and getters, etc.
}
class Y{
   String id;
   String name;
   List<X> listOfX;
//setters and getters, etc.
}

在Drools服务器(6.4版本)上。可以说我们有2条规则:

rule "ruleX"
when
    xVariable: X(name==null)
then
    System.out.println( "X name is null" );
end


rule "ruleY"
when
    yVariable: Y(id==null)
then
    System.out.println( "Y id is null" );
end

我想要做的是仅将Y对象发送到服务器,并使用“ ruleX”验证字段“ listOfX”。

可以在ruleY中说些什么吗?

rule "ruleY"
when
    yVariable: Y(id==null)
then
   ///validate here with "ruleX" each object of the "listOfX"
    System.out.println( "Y id is null" );
end

1 个答案:

答案 0 :(得分:0)

我认为您需要使用“ from”条件元素。请参阅此处的文档[1]。

[1] https://docs.jboss.org/drools/release/7.16.0.Final/drools-docs/html_single/index.html#_conditional_element_from