Can someone help me with this? The rule doesn't have any commas. It calls a
"global" objects (navService) boolean methods. If the "eval" is commented out
it works. I've used the global object in other more complicated rules and it
works fine.
rule "Menu Dependents Not Elig"
when
menuNavItem : MenuNavItem( id == NavConstants.NAV_DEPENDENTS )
// Can't have Dependents without HW Plans.
eval( !navService.haveHWPlans() )
then
System.out.println( "Menu Dependents Not Elig:
"+menuNavItem.getId() );
retract( menuNavItem );
end
.
org.drools.rule.InvalidRulePackage: Rule Compilation error Syntax error on
token ",", delete this token
at org.drools.rule.Package.checkValidity(Package.java:378)
at org.drools.reteoo.RuleBaseImpl.addPackage(RuleBaseImpl.java:303)
at
org.drools.jsr94.rules.admin.RuleExecutionSetImpl.<init>(RuleExecutionSetImpl.java:117)
at
org.drools.jsr94.rules.admin.LocalRuleExecutionSetProviderImpl.createRuleExecutionSet(LocalRuleExecutionSetProviderImpl.java:183)
at
org.drools.jsr94.rules.admin.LocalRuleExecutionSetProviderImpl.createRuleExecutionSet(LocalRuleExecutionSetProviderImpl.java:127)
at
com.mhris.common.rules.RuleEngineFacade.addRuleExecutionSet(RuleEngineFacade.java:50)
at
com.mhris.benefits.navigation.StatelessRuleSessionTestCase.setUp(StatelessRuleSessionTestCase.java:61)
at junit.framework.TestCase.runBare(TestCase.java:125)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:481)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:347)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Thanks
George
The information contained in this e-mail may be confidential and is intended
solely for the use of the named addressee.
Access, copying or re-use of the e-mail or any information contained therein by
any other person is not authorized.
If you are not the intended recipient please notify us immediately by returning
the e-mail to the originator.(16b)