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