In Java, a constructor with package level visibility can be called from some
other class in the same package.
It seems that this is not possible from the RHS of a rule that is in a .DRL
file that has the same "package" declaration as the package of the class
that should be instantiated. An IllegalAccessException is thrown.
This looks as if the constructor called reflectively from another package?!
xception in thread "main" java.lang.IllegalAccessError: tried to access
method
rss.ixl.route.TrainStartGoalConn.<init>(Lrss/ixl/cfg/jaxb/elrep/FrontBackType;Lrss/ixl/cfg/jaxb/elrep/FrontBackType;Ljava/lang/String;Lrss/ixl/cfg/jaxb/elrep/ElemType;)V
from class rss.ixl.route.Rule_concatenateRoutes_0
at
rss.ixl.route.Rule_concatenateRoutes_0.consequence(Rule_concatenateRoutes_0.java:12)
at
rss.ixl.route.Rule_concatenateRoutes_0ConsequenceInvoker.evaluate(Rule_concatenateRoutes_0ConsequenceInvoker.java:38)
at
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:934)
at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:885)
at org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1086)
at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:682)
at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:649)
at
org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:183)
at rss.aws.engine.impl.DroolsEngine.runUntilIdle(DroolsEngine.java:85)
at rss.aws.init.Main.exec(Main.java:133)
at rss.aws.init.Main.main(Main.java:199)
Best
-W