1

Guvnor のドキュメントでは、データ列挙を定義して Guvnor で使用する方法を知っています。自分の Java コードからデータ列挙を取得することは可能ですか?

4

2 に答える 2

0

これに答えるのに遅すぎないことを願っています。

アプリケーションからguvnorに列挙型をロードするには、

  1. 文字列から動的に列挙型クラスを構築します(私の場合、列挙型の値はGUIを介してユーザーによって提供されます)
  2. それをjarに追加し、バイト配列に変換します
  3. REST呼び出しを介してアセット(モデルjar)としてguvnorにPOSTします
  4. リポジトリ保存操作の呼び出し(guvnorのソースコードの変更)

これで、列挙型がルールウィンドウにファクトとして表示されます。

モデルjarの編集/削除とルールの余波の検証は、注意が必要なことです。

于 2013-01-17T13:15:57.480 に答える
0

Guvnorのドキュメントから:

プログラムによる列挙型のロード:場合によっては、列挙型データを外部データソース(リレーショナルデータベースなど)から完全にロードしたい場合があります。これを行うには、Mapを返すクラスを実装できます。マップのキーは文字列(上記のFact.field名)であり、値はjava.util.ListofStringsです。

public class SampleDataSource2 {
    public Map<String>, List<String> loadData() {
        Map data = new HashMap();
        List d = new ArrayList();
        d.add("value1");
        d.add("value2");
        data.put("Fact.field", d);
        return data;
    }
}

そして、BRMSの列挙では、次のように記述します。

=(new SampleDataSource2()).loadData()

「=」は、コードを実行してデータをロードするように指示します。

よろしくお願いします、

于 2012-11-05T07:38:58.357 に答える