[rules-users] query on "modify"

Prem Kumar L Prem.Kumar at Sun.COM
Tue Jun 24 09:24:32 EDT 2008


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








More information about the rules-users mailing list