ドキュメントから直接の次のコード行
ksession.addEventListener(new DebugWorkingMemoryEventListener());
Eclipseで次のエラーが表示されます
タイプ WorkingMemoryEventManager のメソッド addEventListener(WorkingMemoryEventListener) は、引数 (DebugWorkingMemoryEventListener) には適用されません。
ドキュメントから直接の次のコード行
ksession.addEventListener(new DebugWorkingMemoryEventListener());
Eclipseで次のエラーが表示されます
タイプ WorkingMemoryEventManager のメソッド addEventListener(WorkingMemoryEventListener) は、引数 (DebugWorkingMemoryEventListener) には適用されません。
org.drools.event.DebugWorkingMemoryEventListener
の代わりにインポートする可能性がありorg.drools.event.rule.DebugWorkingMemoryEventListener
ます。
私たちの場合、次のコードは問題なく動作します。
import org.drools.event.rule.DebugWorkingMemoryEventListener;
import org.drools.event.rule.ObjectInsertedEvent;
import org.drools.event.rule.ObjectRetractedEvent;
import org.drools.event.rule.ObjectUpdatedEvent;
...
StatelessKnowledgeSession ksession = kbase.newStatelessKnowledgeSession();
ksession.addEventListener(new DebugWorkingMemoryEventListener() {
@Override
public void objectInserted(ObjectInsertedEvent event) {
System.out.println(event);
}
@Override
public void objectRetracted(ObjectRetractedEvent event) {
System.out.println(event);
}
@Override
public void objectUpdated(ObjectUpdatedEvent event) {
System.out.println(event);
}
});