SAP Knowledge Base Article - Preview

3515578 - DOEST NOT CONTAIN Operator is not working with order entry related condition after upgrade to Drools 8 in SAP Commerce Promotion Engine

Symptom

After the upgrade the Drools to version 8 the Qualifying product/category condition with DOEST NOT CONTAIN Operator is not working with order entry related condition in promotion engine.

The rule evaluation will fail. The promotion won't fire. The below exception will be thrown.

INFO   | jvm 1    | main    | 2024/09/04 23:36:38.361 | ERROR [hybrisHTTP32] [DefaultCommerceRuleEngineService] Rule evaluation failed with message 'Cannot invoke "org.kie.api.runtime.rule.FactHandle.getObject()" because "fh" is null' for facts: 
[de.hybris.platform.ruleengineservices.rao.DeliveryModeRAO@973c19bc, de.hybris.platform.ruleengineservices.rao.DeliveryModeRAO@48136753, de.hybris.platform.ruleengineservices.rao.CustomerSupportRAO@9e61, de.hybris.platform.ruleengineservices.rao.CartRAO@ba071822,
de.hybris.platform.couponservices.rao.CouponRAO@4e79601, de.hybris.platform.ruleengineservices.rrd.EvaluationTimeRRD@2127a5c0, de.hybris.platform.ruleengineservices.rao.OrderEntryRAO@1217989,
de.hybris.platform.ruleengineservices.rao.UserRAO@2ea4ed4e, de.hybris.platform.ruleengineservices.rao.UserGroupRAO@80aab180, de.hybris.platform.ruleengineservices.rao.DeliveryModeRAO@26cde946,
de.hybris.platform.ruleengineservices.rao.OrderEntryRAO@e0e8af84, de.hybris.platform.ruleengineservices.rao.DeliveryModeRAO@c5150a9b, de.hybris.platform.ruleengineservices.rao.WebsiteGroupRAO@12f9fc0c,
de.hybris.platform.ruleengineservices.rao.DeliveryModeRAO@aa9b7b6d, de.hybris.platform.ruleengineservices.rao.DeliveryModeRAO@98fb96ac, de.hybris.platform.ruleengineservices.rao.RuleEngineResultRAO@1433444c,
de.hybris.platform.droolsruleengineservices.agendafilter.impl.DefaultRuleAndRuleGroupExecutionTracker@29fbb050].

INFO   | jvm 1    | main    | 2024/09/04 23:36:38.361 | java.lang.NullPointerException: Cannot invoke "org.kie.api.runtime.rule.FactHandle.getObject()" because "fh" is null
INFO   | jvm 1    | main    | 2024/09/04 23:36:38.361 |     at org.drools.base.rule.Declaration.getValue(Declaration.java:231) ~[drools-base-8.44.0.Final.jar:8.44.0.Final]
INFO   | jvm 1    | main    | 2024/09/04 23:36:38.361 |     at org.drools.base.rule.Declaration.getValue(Declaration.java:227) ~[drools-base-8.44.0.Final.jar:8.44.0.Final]
INFO   | jvm 1    | main    | 2024/09/04 23:36:38.361 |     at org.drools.base.rule.accessor.TupleValueExtractor.getValue(TupleValueExtractor.java:26) ~[drools-base-8.44.0.Final.jar:8.44.0.Final]
INFO   | jvm 1    | main    | 2024/09/04 23:36:38.361 |     at org.drools.base.util.FieldIndex.indexedValueOf(FieldIndex.java:79) ~[drools-base-8.44.0.Final.jar:8.44.0.Final]

Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.


Read more...

Environment

SAP Commerce Cloud 2211.24 and later releases, in which the Drools 8 is used by default.

Product

SAP Commerce Cloud all versions ; SAP Commerce all versions

Keywords

promotion, promotion engine, Drools 8, rule engine, DOES NOT CONTAIN, java.lang.NullPointerException,org.kie.api.runtime.rule.FactHandle.getObject, Rule evaluation failed, org.drools.core.reteoo.LeftTuple.getIndex , KBA , CEC-SCC-COM-PRO-PE , Promotion Engine , Problem

About this page

This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).

Search for additional results

Visit SAP Support Portal's SAP Notes and KBA Search.