Hi,
I tried creating/compiling/executing the following rule using the drools
eclipse workbench:
package com.sample
import org.domain.CreditCard;
rule "Credit Eligibility"
no-loop true
when
cc : CreditCard( age > 18, annualIncome > 50000, asset> 500000 )
then
cc.setEligibilityStatus( "Eligible for credit card" );
System.out.println("Valid Credit Score ");
modify( cc );
end
I was successfully able to run the rule against my CreditCard object.
However, when I tried running it from withing my applicaiton by
embedding drools(latest, the following error occurs:
org.drools.rule.InvalidRulePackage: Rule Compilation error : [Rule
name=Credit Eligibility, agendaGroup=MAIN, salience=0, no-loop=true]
com/sample/Rule_Credit_Eligibility_0.java (13:652) : The method
modify(CreditCard) is undefined for the type Rule_Credit_Eligibility_0
at org.drools.rule.Package.checkValidity(Package.java:424)
at
org.drools.common.AbstractRuleBase.addPackage(AbstractRuleBase.java:384)
at
org.drools.jsr94.rules.admin.RuleExecutionSetImpl.<init>(RuleExecutionSetImpl.java:130)
at
org.drools.jsr94.rules.admin.LocalRuleExecutionSetProviderImpl.createRuleExecutionSet(LocalRuleExecutionSetProviderImpl.java:233)
at
org.drools.jsr94.rules.admin.LocalRuleExecutionSetProviderImpl.createRuleExecutionSet(LocalRuleExecutionSetProviderImpl.java:176)
at
org.drools.jsr94.rules.admin.LocalRuleExecutionSetProviderImpl.createRuleExecutionSet(LocalRuleExecutionSetProviderImpl.java:96)
Any pointers would be much appreciated!
Prem