I've created the following rule in BRMS and deployed it -
rule "Underwriting Rule 1"
dialect "mvel"
when
p : Policy( premium < "50.00" )
then
p.setStatus( 32 );
end
I have the following code processing the rule -
public void main(Policy inputPolicy) throws Exception
{
RuleBase ruleBase = loadRuleBase();
StatefulSession session = ruleBase.newStatefulSession();
session.insert(inputPolicy);
session.fireAllRules();
}
private RuleBase loadRuleBase() throws IOException, Exception
{
RuleAgent agent = RuleAgent.newRuleAgent("/uwrules.properties");
RuleBase ruleBase = agent.getRuleBase();
return ruleBase;
}
When I run my application I get the following error. Could someone tell
me why or where to look to determine the reason? Do I have something
coded incorrectly?
Exception in thread "main" javax.ejb.EJBException:
java.lang.ClassCastException: java.util.HashSet
at
org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:63)
at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
at
org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
.
.
.
Caused by: java.lang.ClassCastException: java.util.HashSet
at org.drools.rule.Package.readExternal(Package.java:172)
at java.io.ObjectInputStream.readExternalData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at
org.drools.agent.HttpClientImpl.fetchPackage(HttpClientImpl.java:54)
at org.drools.agent.URLScanner.readPackage(URLScanner.java:137)
at org.drools.agent.URLScanner.getChangeSet(URLScanner.java:109)
at
org.drools.agent.URLScanner.loadPackageChanges(URLScanner.java:88)
at
org.drools.agent.RuleAgent.checkForChanges(RuleAgent.java:297)
at
org.drools.agent.RuleAgent.refreshRuleBase(RuleAgent.java:265)
at org.drools.agent.RuleAgent.configure(RuleAgent.java:251)
at org.drools.agent.RuleAgent.init(RuleAgent.java:183)
at org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:192)
Show replies by thread