私は過去1日間問題を解決しようとしていましたが、解決できませんでした。タイプのみインポートできます。 models.XYZがパッケージに解決する
Iamが遊びモデルから脱落(ルール)を引き起こしています。私のローカル環境では問題なく動作しています。
しかし、IAMは、次のエラー
Error = Unable to resolve ObjectType 'Tracker' : [Rule name='PM APPROVAL']
Unable to resolve ObjectType 'User' : [Rule name='SEND MAILS']
Unable to resolve ObjectType 'Tracker' : [Rule name='SEND MAILS']
Error importing : 'models.Tracker'Error importing : 'notifications.TrackerMails'Error importing : 'models.User'Rule Compilation error : [Rule name='SEND MAILS']
drools/Rule_SEND_MAILS_0.java (2:23) : Only a type can be imported. notifications.TrackerMails resolves to a package
drools/Rule_SEND_MAILS_0.java (2:57) : Only a type can be imported. models.Tracker resolves to a package
drools/Rule_SEND_MAILS_0.java (2:95) : Only a type can be imported. models.User resolves to a package
drools/Rule_SEND_MAILS_0.java (8:422) : TrackerMails cannot be resolved
drools/Rule_SEND_MAILS_0.java (8:455) : $user cannot be resolved to a variable
drools/Rule_SEND_MAILS_0.java (8:461) : $tracker cannot be resolved to a variable
drooolssession.Iが、私はまだいくつかのフォーラムで見たが、変数のクラスローダを追加する必要があり得るのサンプルコードを取得し、SolarisのボックスIAMに生産上の同じアプリケーションを展開するとき問題は解決していません。
StatefulKnowledgeSession dsession = null;
ClassLoader classLoader = TrackerUtil.class.getClassLoader();
KnowledgeBuilderConfiguration kBuilderConfiguration = KnowledgeBuilderFactory.newKnowledgeBuilderConfiguration(null, classLoader);
KnowledgeBuilder builder = KnowledgeBuilderFactory.newKnowledgeBuilder(kBuilderConfiguration);
KnowledgeBaseConfiguration kbaseConfig = KnowledgeBaseFactory.newKnowledgeBaseConfiguration(null, classLoader);
'''''
builder.add(ResourceFactory.newFileResource(new File(uri)),ResourceType.DRL);
''''
builder.add(ResourceFactory.newFileResource(new File(uri)),ResourceType.DRF);
.......
KnowledgeBase knowledgeBase = KnowledgeBaseFactory.newKnowledgeBase(kbaseConfig);
knowledgeBase.addKnowledgePackages(builder.getKnowledgePackages());
dsession = knowledgeBase.newStatefulKnowledgeSession();
return dsession;
誰でも問題の解決方法を教えてください。
クラスローダーからクラスをロードしようとしても、クラスを正しく読み込むことができますが、まだ豆を解決することができます –
kbaseとksessionで同じクラスローダーを使用しようとしました – salaboy
はいまだ私はできませんでした解決する。 –