Brian, the order of the mappings is important, because DSL is a "text match" engine. So, always write your DSL Mapping file having the most restrictive mappings first.
[]s Edson 2007/9/17, Brian Enderle <[EMAIL PROTECTED]>: > > I have the following DSL entries: > > County is invalid for State > [condition][]County is invalid for State=eval(StringUtils.isNotBlank > ($i.getCntyCd())) and > eval(!$i.getCntyCd().substring(0,2).equals($i.getStateCd > ())) > > POB County is invalid for State > [condition][]POB County is invalid for State=eval(StringUtils.isNotBlank > ($i.getPobCntyCd())) and eval(!$i.getPobCntyCd().substring(0,2).equals > ($i.getPobStateCd())) > > The rule in which I am using the DSL entry is as follows: > rule "LevelOne: Place Of Birth, County is invalid" > agenda-group "LevelOne" > when > There is a NwCitizenship > - pobCntryCd equals MessageConstants.COUNTRY_CODE_US > POB County is invalid for State > then > <Report error> > end > > > When I atempt to use the POB County... rule I get the following error: > > org.springframework.beans.factory.BeanCreationException: Error creating > bean > with name 'ruleBase' defined in class path resource [spring-beans.xml]: > Invocation of init method failed; nested exception is > org.drools.rule.InvalidRulePackage: [143,33]: unknown:143:33 Unexpected > token '$i'[143,47]: unknown:143:47 mismatched token: > [EMAIL PROTECTED],4726:4726=')',<12>,143:47]; expecting type THEN > Caused by: org.drools.rule.InvalidRulePackage: [143,33]: unknown:143:33 > Unexpected token '$i'[143,47]: unknown:143:47 mismatched token: > [EMAIL PROTECTED],4726:4726=')',<12>,143:47]; expecting type THEN > at org.drools.rule.Package.checkValidity(Package.java:420) > at org.drools.common.AbstractRuleBase.addPackage > (AbstractRuleBase.java:292) > at com.sample.RuleBaseBeanFactory.afterPropertiesSet > etc... > > However, if I change "POB County" to "POBCounty" (no space, only change > the > DSL call leaving the actual code the same) everything works. Can someone > explain why the two rules cannot coexist with the space in "POB County"? > > Thanks, > Brian Enderle > > _______________________________________________ > rules-users mailing list > rules-users@lists.jboss.org > https://lists.jboss.org/mailman/listinfo/rules-users > -- Edson Tirelli Software Engineer - JBoss Rules Core Developer Office: +55 11 3529-6000 Mobile: +55 11 9287-5646 JBoss, a division of Red Hat @ www.jboss.com
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users