Details
-
Bug
-
Resolution: Done
-
Major
-
None
-
None
Description
When using working memory entry-points, I have a different behaviour than when I use the session.
Here is a test illustrating this:
package org.drools.test;
import org.drools.KnowledgeBase;
import org.drools.KnowledgeBaseConfiguration;
import org.drools.KnowledgeBaseFactory;
import org.drools.builder.KnowledgeBuilder;
import org.drools.builder.KnowledgeBuilderFactory;
import org.drools.builder.ResourceType;
import org.drools.conf.EventProcessingOption;
import org.drools.io.ResourceFactory;
import org.drools.logger.KnowledgeRuntimeLoggerFactory;
import org.drools.runtime.StatefulKnowledgeSession;
import org.drools.runtime.rule.WorkingMemoryEntryPoint;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.io.StringReader;
public class DroolsFusionInheritanceBugsTest {
private StatefulKnowledgeSession session;
private WorkingMemoryEntryPoint stream;
private final static String drl = "package org.drools.test;\n" +
"declare A\n" +
" @role(event)\n" +
"end\n" +
"\n" +
"rule \"myrule\"\n" +
"when\n" +
" $a : A() from entry-point \"mystream\"\n" +
"then\n" +
" System.out.println(\"fired!\");\n" +
"end\n";
@Test
public void testOkWithEventsInheritance()
@Test
public void testFailsWithEventsInheritanceThroughWorkingMemoryEntryPoint()
@Before
public void setupDrools()
@After
public void releaseDroolsSession()
}
class A {}
class B extends A { }
When using working memory entry-points, the insert of a B instances fails with a:
java.lang.ClassCastException: org.drools.common.DefaultFactHandle cannot be cast to org.drools.common.EventFactHandle
Attachments
Issue Links
- is blocked by
-
JBRULES-2580 NPE when declaring an interface as an event
-
- Resolved
-