What error are you getting?

   I just tested this in MVELSH and it works:

mvel$ map["outerKey"]["innerKey"]
OUT: innerValue

   []s
   Edson


2007/7/24, Felipe Piccolini <[EMAIL PROTECTED]>:

Suppouse I have a Map attribute and one of the values is another Map...how
can I check a member of the inner Map?
class MyFact{
     Map map;
     public MyFact(){
           this.map = new HashMap();
     }

     ....setter and getter...

}

-- test --
MyFact myFact = new MyFact();

Map innerMap = new HashMap();
innerMap.put("innerKey", new String("InnerValue"));

Map map = new HashMap();
map.put("mapKey", innerMap);

myFact.setMap(map);

.... set the RuleBase and insert myFact as a fact for the WorkingMemory...

-------

Now... how should I write the rule to check the innerKey ??

rule "test InnerMap"
     when
           $mf: MyFact( map['mapKey']['innerKey'] == "InnerValue" ) //
doesnt work...
    ....

           $mf: MyFact( map['mapKey'].this['innerKey'] == "InnerValue" )
// doesnt work...
   $mf: MyFact( map['mapKey'].['innerKey'] == "InnerValue" ) // doesnt
work...
   $mf: MyFact( $innerMap: map['mapKey'], $innerMap['innerKey'] ==
"InnerValue" ) // doesnt work...
           $mf: MyFact( $innerMap: map['mapKey'] -> ($innerMap['innerKey']
== "InnerValue" )) // doesnt work...


Thanks.
                                                                        *Felipe
Piccolini M.*
[EMAIL PROTECTED]





_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users




--
 Edson Tirelli
 Software Engineer - JBoss Rules Core Developer
 Office: +55 11 3529-6000
 Mobile: +55 11 9287-5646
 JBoss, a division of Red Hat @ www.jboss.com
_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to