2

静的な drl ファイルを提供する代わりに Java で Drools ルールを動的に構築する方法は?

実行時に解析してリロードできるようにする必要がある xml で定義された一連の一致ルールがあります。Drools ルールを動的に構築する方法はありますか? ドキュメントで見つけられませんでした。

4

2 に答える 2

0

Romainのコメントに同意します-宣言形式のルールがある場合-それらのルールに暗黙の高次ロジックがない限り(私が見つけた可能性は低いです)、またはおそらく1つを実行したい場合を除き、そこから直接コードを生成できますXML からルール言語への時間の移行。

于 2010-06-29T23:35:03.763 に答える
0

ルールは「静的」部分であるという以前の回答とコメントに同意します。ルールがオンデマンドで動的に作成される場合、ルール エンジンの使用法には問題があります。ただし、drools がすぐに処理できる形式/形式でルールが提供されていない場合があります。このような場合、初期化フェーズ中にプログラムでルールを作成する必要があります。

以上のことから、ルール (文字列として指定) を drools に追加する方法は次のとおりです。

public void addRule(String myRuleStatement, String myPackage, RuleBase myRuleBase ) {
    PackageBuilder packageBuilder = new PackageBuilder(new Package(myPackage));
    packageBuilder.addPackgeFromDrl( new StringReader( myRuleStatement ) );
    myRuleBase.addPackage ( packageBuilder.getPackage() );
}
于 2014-01-28T10:07:43.110 に答える