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@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@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@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@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@telecomitalia.it.

        Thank you

                                        www.telecomitalia.it

--------------------------------------------------------------------
                        
  

_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users