我想知道,我们应该如何执行IBM ODM技术规则中编写的规则。我使用的是ODM V8.0.1。我试过如下。
-
我创建了一个名为Courier.java 的XOM类
公共类信使{private字符串courierType;私有int距离;
与getters&设置
}
-
我创建了一个添加XOM的规则项目,并创建了相应的BOM。
- 我已将Courier对象添加为IN_OUT规则集参数,名称为"Courier"
-
然后创建了一个带有以下代码的技术规则
何时{cour:Courier();}
那么{注("快递对象检查合格");}
-
创建了一个规则流,其中只有一个规则任务指向上述技术规则。
-
然后我将这个规则流作为运行
-
运行方式-->运行配置
- 在Run Configuration dailog框中,在下面的函数中创建信使对象和
运行配置
com.seldart.Courier-cour=新建com.seldart.Courier();回程;
规则流执行持续了2秒,但note()方法中的语句没有
打印在控制台中。 - 在Run Configuration dailog框中,在下面的函数中创建信使对象和
-
我不确定,是规则流没有选择技术规则本身来运行还是快递对象没有被识别?请指导我以正确的方式执行此技术规则。谢谢
我认为您必须将信使规则集参数显式添加到工作内存中,例如在规则流的启动节点的Initial Action中。
例如,在IRL:中
insert courier;
简单地说,首先在B2X中为函数创建一个动作描述。这样,它对项目和引用中的所有规则对象都是"可见的"。
其次,尝试创建一个操作规则,并用它引用这个新的措辞
第三,创建一个规则流来编排这个操作规则。
要执行所有这些内容,请尝试使用ILOG/IBM JRules API模拟规则集或导出并运行jar包。