0

我在理解如何在 Guvnor 规则中表示 String[] 时遇到了一些困难。如何将字符串数组传递给使用 String[] 作为 Guvnor 规则中的参数的 Java 方法?

当我尝试在 Guvnor 中验证规则时,我不断收到不匹配的输入错误,错误代码 102。

欢迎任何指针/提示

在下面的规则中,comm 是一个带有函数 sendMail 的全局对象,函数签名为 (String[] recipientlist, String alertType, String message)

rule "list-email"
    dialect "java"
        when
            $result : Grade( subject == "Math" , $marks : mark >= 99.0 )
            $emailList : "{xyz@abc.com, fgh@def.com}"
        then
            comm.sendMail($emailList, "High Grade Alert", "Scored: " + " Marks:" +       Double.toString($marks));
4

1 回答 1

1

尝试在 LHS 上引入 String[] 不是一个好主意 - 你不匹配它,我怀疑语法是否正确。使用这个 - 在 RHS 上它是 Java:

rule "list-email"
dialect "java"
when
    $result : Grade( subject == "Math" , $marks : mark >= 99.0 )
then
    String[] addrs = new String[]{"xyz@abc.com", "fgh@def.com"};
    comm.sendMail(addrs, "High Grade Alert", "Scored: " + " Marks:" + $marks );
end
于 2014-07-11T10:52:46.083 回答