1 Reply Latest reply on Sep 19, 2012 12:24 AM by LarsTrieloff

    CQ5.5 ClientContext.get('profile/region') === 'MW' versus Generic Store Property component

    Maria S Petzold

      Hi there,


      I have been having segment resolution problems for a custom data store that sets a new property, "region", on the data store "profile".  Precisely, it adds a new "region" property to the existing data store "profile".


      The segment resolution problems occurred when using the Generic Store Property component for the segment trait definition.

      I dragged it onto the stage and populate it, choosing the following:


      - Store:  profile

      - Property Name: region (that's set in our custom store implemention, which is deployed to /etc/clientcontext/default/content.  having genericstoreproperties with "region" in its properties attribute (which all works.  That's why Generic Store Property can indeed find "region" to select from as possible property value).

      - Operator: equals

      - Property Value: MW


      However, when I change the segment trait definition to a script instead:

      ClientContext.get('profile/region') === 'MW'


      Then, I will not have segment resolution problems anymore.


      I looked at the definition of the OOTB component "Generic Store Property".  It's defined in /libs/cq/personalization/components/traits/generic


      ClientContext is an object of CQ_Analytics, and it's defined in /libs/cq/personalization/components/clientcontext/clientlib/clientcontext.js


      At no point that I was able to make out, the OOTB component "Generic Store Property" accesses ClientContext.


      My question is:

      - How is "Generic Store Property" component with the values set as above different from a script snippet ClientContext.get('profile/region') === 'MW'?

      At what point does it access the ClientContext object?


      Finally, does it change the order of js which is loaded, when I use the Generic Store Property, instead of the script snippet ClientContext.get('profile/region') === 'MW'?


      If that is true, is this a possible bug in Adobe CQ5.5?


      Thanks for any hint on this.