Java 在Drools中,如何检查列表是否不包含具有特定值的对象?

Java 在Drools中,如何检查列表是否不包含具有特定值的对象?,java,drools,Java,Drools,我正在制定一个规则,查看给定对象的列表,并检查其中一个字符串字段是否不包含某个值。如果列表中的任何对象包含所述值,则我希望规则失败 when $vr: RequestDTO($activeObjects: activeObjects); eval(!$activeObjects contains ObjectDTO(this.name == "TEST NAME")); then displayModalAction.setMes

我正在制定一个规则,查看给定对象的列表,并检查其中一个字符串字段是否不包含某个值。如果列表中的任何对象包含所述值,则我希望规则失败

    when
        $vr: RequestDTO($activeObjects: activeObjects);
        eval(!$activeObjects contains ObjectDTO(this.name == "TEST NAME")); 
    then
        displayModalAction.setMessage("Message to Show");
    end

在规则的when语句中是否有执行此类操作的方法?

似乎您正在寻找没有名为“TEST name”的ObjectDTO的requestdto。如果正确,请尝试以下方法:

when
    RequestDTO($activeObjects: activeObjects)
    not exists(ObjectDTO(name == "TEST NAME") from $activeObjects)
then
    ...