You must insert a magic spell string to make this work ;-)
Look at this line:
String(FactorKeys.PHONE_PACKAGE memberOf ownedProductFactorSet)
It says: "If there is an object of type java.lang.String and..." And so you must insert a String!
But, of course, you don't need this condition. You just want to make sure that FactorKeys.PHONE_PACKAGE is contained in the global ownedProductFactorSe.
You should write this as
eval( ownedProductFactorSet.contains( FactorKeys.PHONE_PACKAGE ) )
Also, this line should be the first line, because it is a constant condition.
(If you do insert an arbitrary String object, the rule will work, but only up to version 5.1.1.
5.2.x has a different parser that refuses incorrect constraints.)
-W
I'm trying to validate that there is a Factor in a collection using the
global variable ownedProductFactorSet. I'm having trouble. I do not get an
error, it just doesn't resolve to true. I've validated the
ownedProductFactor set has the Factor
Java class that is contained withing the ownedProductFactorSet:
Factor
String key
String value
Here is the code in the drl:
global Set ownedProductFactorSet;
rule "Owned Products"
ruleflow-group "discount-pricing"
lock-on-active true
when
not Factor(key == FactorKeys.DISCOUNT)
String(FactorKeys.PHONE_PACKAGE memberOf ownedProductFactorSet)
Factor(key == RulesKeys.WIRELESS)
then
logger(kcontext).info("SUCCESS - *******************************");
insert(new Factor(FactorKeys.DISCOUNT)); end
It never gets to the consequence (RHS - "then" part) of this rule.
If I comment out the following line:
String(FactorKeys.PHONE_PACKAGE memberOf ownedProductFactorSet) It
will work.
Any help with the memberOf keyword is greatly appreciated.
Thanks,
-dxande6
--
View this message in context: http://drools.46999.n3.nabble.com/Drool-5-memberOf-problem-tp2953475p2953475.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users