[
https://issues.jboss.org/browse/DROOLS-147?page=com.atlassian.jira.plugin...
]
Davide Sottara commented on DROOLS-147:
---------------------------------------
Sorry I had missed the dependencies and I ended up re-adding them. You are not doing
anything too strange, except that in drools 5.5 / jbpm 5.4 the inner classes -
PackageBuilder, Rulebase, etc... - do not initialize the process runtime, while the
Knowledge-API do so. A patch is unlikely since users are encouraged to use the public
APIs, but the rule above
might be the workaround you need.
Essentially it wraps your ReteooWorkingMemory in a StatefulKnowledgeSession, which can be
used to initialize the Process Runtime in the working memory itself. You can do something
equivalent from java as well. I can not guarantee that this is enough, but I could run
your test case correctly using it.
After upgrading the drools jars to 5.5.0 from 5.0.1 we are unable to
execute the rule flows.
--------------------------------------------------------------------------------------------
Key: DROOLS-147
URL:
https://issues.jboss.org/browse/DROOLS-147
Project: Drools
Issue Type: Component Upgrade
Security Level: Public(Everyone can see)
Affects Versions: 5.5.0.Final
Environment: Websphere application server 6.1
Reporter: Prashant Hariharan
Assignee: Mark Proctor
Attachments: rfissue.zip
After upgrading the drools jars to 5.5.0 from 5.0.1 we are unable to execute the rule
flows. The drools engine throws a null pointer exception the stackrace of which is as
follows : The stacktrace of the same can be seen below: Exception executing consequence
for rule "Initialisation For All" in
com.mastek.groupelixir.schemeuw.rules.controller: java.lang.NullPointerException at
org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1297) at
org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1221) at
org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1456) at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:710) at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:684) at
org.drools.reteoo.ReteooStatelessSession.execute(ReteooStatelessSession.java:206)
After some detailed analysis the problem seems to be with the usage of Rule
base,PacakgeBuilder and StatlessSessions as opposed to the set of
KnowledgeBaes,KowledgeBuilders and StatelessKnowledgeSessions for executing the rule
flows. The rule flow,drl and the standalone program has been attached for reference. The
problem is that the application still uses the packagebuilder and it will be difficult to
upgrade it to knowledge builders So is there any workaround for the same?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira