3
我們正在使用JBoss Rules(又名Drools),並有幾個.drl文件,每個文件包含幾個規則。有沒有辦法避免文件之間的重複,以便我們可以定義可用於多個.drl文件的通用規則?我們如何共享JBoss規則中的.drl文件之間的單獨規則?
不幸的是,似乎沒有任何一種包括或模塊設施。
我們正在使用JBoss Rules(又名Drools),並有幾個.drl文件,每個文件包含幾個規則。有沒有辦法避免文件之間的重複,以便我們可以定義可用於多個.drl文件的通用規則?我們如何共享JBoss規則中的.drl文件之間的單獨規則?
不幸的是,似乎沒有任何一種包括或模塊設施。
無法在.drl文件中包含來自另一個.drl文件的規則。
但是,您可以將兩個.drl文件添加到同一個規則庫,並且它們將像在同一個文件中一樣工作。
PackageBuilder builder = new PackageBuilder();
builder.addPackageFromDrl(new InputStreamReader(getClass().getResourceAsStream("common.drl")));
builder.addPackageFromDrl(new InputStreamReader(getClass().getResourceAsStream("rules1.drl")));
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage(builder.getPackage() );