[rules-users] Is 3.1 M1 backward compatible?
Mark Proctor
mproctor at codehaus.org
Wed Feb 21 09:41:08 EST 2007
The syntax is backwards compatible. However as the release notes mention
we no longer autobox primitives, as you can now work directly with them,
which will cause issues in old drls that assumed numbers are wrapped.
Also pojos must have a default constructor and not use the final keyword
at the class and method level - we are actively looking to add more
flexability to this case.
Mark
Dandrea Francesco wrote:
> Hi all,
> the attached example runs ok (slow but ok) on JBoss Rules 3.0.5
> Now when I run it with 3.1M1 I have an exception (I pasted it at the end
> of the mail).
> Is 3.1 M1 backward compatible? Is this a bug? Should I change the code
> in some way?
> Thanks a lot
>
> org.drools.RuntimeDroolsException: Exception executing predicate
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Pr
> edicate0Invoker at 60bd060e
>
> at
> org.drools.rule.PredicateConstraint.isAllowedCachedRight(PredicateConstr
> aint.java:196)
>
> at
> org.drools.common.SingleBetaConstraints.isAllowedCachedRight(SingleBetaC
> onstraints.java:111)
>
> at org.drools.reteoo.NotNode.assertObject(NotNode.java:149)
>
> at
> org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(Compo
> siteObjectSinkAdapter.java:313)
>
> at
> org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:163)
>
> at org.drools.reteoo.Rete.assertObject(Rete.java:121)
>
> at
> org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:196)
>
> at
> org.drools.reteoo.ReteooWorkingMemory.doAssertObject(ReteooWorkingMemory
> .java:68)
>
> at
> org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemo
> ry.java:724)
>
> at
> org.drools.base.DefaultKnowledgeHelper.assertObject(DefaultKnowledgeHelp
> er.java:72)
>
> at
> org.drools.base.DefaultKnowledgeHelper.assertObject(DefaultKnowledgeHelp
> er.java:66)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0.c
> onsequence(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0.java:17)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Co
> nsequenceInvoker.evaluate(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0
> ConsequenceInvoker.java:22)
>
> at
> org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:467)
>
> at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:431)
>
> at
> org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemo
> ry.java:360)
>
> at
> org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemo
> ry.java:341)
>
> at
> it.telecomitalia.netbox.MainProvaClass.fireRuleEngineProva(MainProvaClas
> s.java:85)
>
> at it.telecomitalia.netbox.MainProvaClass.main(MainProvaClass.java:23)
>
> Caused by: java.lang.ClassCastException:
> it.telecomitalia.netbox.AggregatedAlarmShadowProxy
>
> at
> org.drools.base.it.telecomitalia.netbox.AllarmeTf$getReferencedElement.g
> etValue(Unknown Source)
>
> at
> org.drools.base.ClassFieldExtractor.getValue(ClassFieldExtractor.java:79
> )
>
> at org.drools.rule.Declaration.getValue(Declaration.java:156)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Pr
> edicate0Invoker.evaluate(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0P
> redicate0Invoker.java:14)
>
> at
> org.drools.rule.PredicateConstraint.isAllowedCachedRight(PredicateConstr
> aint.java:190)
>
> ... 18 more
>
> org.drools.RuntimeDroolsException: Exception executing predicate
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Pr
> edicate0Invoker at 60bd060e
>
> at
> org.drools.rule.PredicateConstraint.isAllowedCachedRight(PredicateConstr
> aint.java:196)
>
> at
> org.drools.common.SingleBetaConstraints.isAllowedCachedRight(SingleBetaC
> onstraints.java:111)
>
> at org.drools.reteoo.NotNode.assertObject(NotNode.java:149)
>
> at
> org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(Compo
> siteObjectSinkAdapter.java:313)
>
> at
> org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:163)
>
> at org.drools.reteoo.Rete.assertObject(Rete.java:121)
>
> at
> org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:196)
>
> at
> org.drools.reteoo.ReteooWorkingMemory.doAssertObject(ReteooWorkingMemory
> .java:68)
>
> at
> org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemo
> ry.java:724)
>
> at
> org.drools.base.DefaultKnowledgeHelper.assertObject(DefaultKnowledgeHelp
> er.java:72)
>
> at
> org.drools.base.DefaultKnowledgeHelper.assertObject(DefaultKnowledgeHelp
> er.java:66)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0.c
> onsequence(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0.java:17)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Co
> nsequenceInvoker.evaluate(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0
> ConsequenceInvoker.java:22)
>
> at
> org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:467)
>
> at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:431)
>
> at
> org.drools.common.AbstractWorkingMemory.doOtherwise(AbstractWorkingMemor
> y.java:384)
>
> at
> org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemo
> ry.java:366)
>
> at
> org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemo
> ry.java:341)
>
> at
> it.telecomitalia.netbox.MainProvaClass.fireRuleEngineProva(MainProvaClas
> s.java:85)
>
> at it.telecomitalia.netbox.MainProvaClass.main(MainProvaClass.java:23)
>
> Caused by: java.lang.ClassCastException:
> it.telecomitalia.netbox.AggregatedAlarmShadowProxy
>
> at
> org.drools.base.it.telecomitalia.netbox.AllarmeTf$getReferencedElement.g
> etValue(Unknown Source)
>
> at
> org.drools.base.ClassFieldExtractor.getValue(ClassFieldExtractor.java:79
> )
>
> at org.drools.rule.Declaration.getValue(Declaration.java:156)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Pr
> edicate0Invoker.evaluate(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0P
> redicate0Invoker.java:14)
>
> at
> org.drools.rule.PredicateConstraint.isAllowedCachedRight(PredicateConstr
> aint.java:190)
>
> ... 19 more
>
> org.drools.spi.ConsequenceException: org.drools.RuntimeDroolsException:
> Exception executing predicate
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Pr
> edicate0Invoker at 60bd060e
>
> at
> org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:471)
>
> at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:431)
>
> at
> org.drools.common.AbstractWorkingMemory.doOtherwise(AbstractWorkingMemor
> y.java:384)
>
> at
> org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemo
> ry.java:366)
>
> at
> org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemo
> ry.java:341)
>
> at
> it.telecomitalia.netbox.MainProvaClass.fireRuleEngineProva(MainProvaClas
> s.java:85)
>
> at it.telecomitalia.netbox.MainProvaClass.main(MainProvaClass.java:23)
>
> Caused by: org.drools.RuntimeDroolsException: Exception executing
> predicate
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Pr
> edicate0Invoker at 60bd060e
>
> at
> org.drools.rule.PredicateConstraint.isAllowedCachedRight(PredicateConstr
> aint.java:196)
>
> at
> org.drools.common.SingleBetaConstraints.isAllowedCachedRight(SingleBetaC
> onstraints.java:111)
>
> at org.drools.reteoo.NotNode.assertObject(NotNode.java:149)
>
> at
> org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(Compo
> siteObjectSinkAdapter.java:313)
>
> at
> org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:163)
>
> at org.drools.reteoo.Rete.assertObject(Rete.java:121)
>
> at
> org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:196)
>
> at
> org.drools.reteoo.ReteooWorkingMemory.doAssertObject(ReteooWorkingMemory
> .java:68)
>
> at
> org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemo
> ry.java:724)
>
> at
> org.drools.base.DefaultKnowledgeHelper.assertObject(DefaultKnowledgeHelp
> er.java:72)
>
> at
> org.drools.base.DefaultKnowledgeHelper.assertObject(DefaultKnowledgeHelp
> er.java:66)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0.c
> onsequence(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0.java:17)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Co
> nsequenceInvoker.evaluate(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0
> ConsequenceInvoker.java:22)
>
> at
> org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:467)
>
> ... 6 more
>
> Caused by: java.lang.ClassCastException:
> it.telecomitalia.netbox.AggregatedAlarmShadowProxy
>
> at
> org.drools.base.it.telecomitalia.netbox.AllarmeTf$getReferencedElement.g
> etValue(Unknown Source)
>
> at
> org.drools.base.ClassFieldExtractor.getValue(ClassFieldExtractor.java:79
> )
>
> at org.drools.rule.Declaration.getValue(Declaration.java:156)
>
> at
> it.telecomitalia.netbox.Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0Pr
> edicate0Invoker.evaluate(Rule_Nuovo_Allarme_Misura_No_Allarme_Oggetto_0P
> redicate0Invoker.java:14)
>
> at
> org.drools.rule.PredicateConstraint.isAllowedCachedRight(PredicateConstr
> aint.java:190)
>
> ... 19 more
> --------------------------------------------------------------------
>
> CONFIDENTIALITY NOTICE
>
> This message and its attachments are addressed solely to the persons above and may contain confidential information. If you have received the message in error, be informed that any use of the content hereof is prohibited. Please return it immediately to the sender and delete the message. Should you have any questions, please contact us by replying to webmaster at telecomitalia.it.
>
> Thank you
>
> www.telecomitalia.it
>
> --------------------------------------------------------------------
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070221/100f1a98/attachment.html
More information about the rules-users
mailing list