[jboss-jira] [JBoss JIRA] Closed: (JBRULES-1364) Drl parser 'or'
Mark Proctor (JIRA)
jira-events at lists.jboss.org
Fri Jan 16 01:47:04 EST 2009
[ https://jira.jboss.org/jira/browse/JBRULES-1364?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mark Proctor closed JBRULES-1364.
---------------------------------
Resolution: Done
I've executed the provided test project on trunk, which will be in the next 5.0.0.M5 release, and everything works fine. I've changed the test method in MiscTest to serialize the package, which should be enough to simulate the .pkg issue the user claims to be having. Everything seems to work, we won't fix this for 4.0.x. Please open with a failing test for trunk if you find any more issues on this.
> Drl parser 'or'
> ---------------
>
> Key: JBRULES-1364
> URL: https://jira.jboss.org/jira/browse/JBRULES-1364
> Project: JBoss Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: drools-compiler
> Affects Versions: 4.0.0.GA, 4.0.1, 4.0.2, 4.0.3
> Reporter: Stjepan Cvitanovi??
> Assignee: Edson Tirelli
> Priority: Critical
> Fix For: 5.0.0.M5
>
> Attachments: drools-examples-drl.rar
>
>
> I've tried to run this on the latest version of drools (4.0.3) but I get an error:
> applyOrTransformation could not find transformation for parent 'OR' and child 'OR'
> java.lang.RuntimeException: applyOrTransformation could not find transformation for parent 'OR' and child 'OR'
> at org.drools.rule.LogicTransformer.applyOrTransformation(LogicTransformer.java:148)
> at org.drools.rule.LogicTransformer.processTree(LogicTransformer.java:140)
> at org.drools.rule.LogicTransformer.transform(LogicTransformer.java:76)
> at org.drools.rule.Rule.getTransformedLhs(Rule.java:419)
> at org.drools.reteoo.builder.ReteooRuleBuilder.addRule(ReteooRuleBuilder.java:102)
> at org.drools.reteoo.ReteooBuilder.addRule(ReteooBuilder.java:116)
> at org.drools.reteoo.ReteooRuleBase.addRule(ReteooRuleBase.java :268)
> at org.drools.common.AbstractRuleBase.addPackage(AbstractRuleBase.java:337)
> at hr.combis.rule.editor.tester.RuleTesterFDAImpl.createRuleBase(RuleTesterFDAImpl.java:210)
> at hr.combis.rule.editor.tester.RuleTesterFDAImpl.init (RuleTesterFDAImpl.java:159)
> at hr.combis.rule.editor.testing.TestingExecutor.run(TestingExecutor.java:129)
> at java.lang.Thread.run(Thread.java:595)
> this is what the rule looks like:
> wine : Wine(color == "red")
> or
> (
> cheese : Cheese(smelly == "yes")
> and
> (
> person : Person(height == 12, fovouriteCheese == cheese)
> or
> person : Person(height == 13, fovouriteCheese == cheese)
> )
> )
> the rule looks perfectly sensical to me. If I change it to this (which, btw. looks non-sensical)
> wine : Wine(color == "red")
> or
> (
> cheese : Cheese(smelly == "yes")
> or
> (
> person : Person(height == 12, fovouriteCheese == cheese)
> and
> person : Person(height == 13, fovouriteCheese == cheese)
> )
> )
> I'm not saying the second one shouldn't work(I fail to make the sense of it however), but it looks to me, the first one should.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list