Oracle ATG Web Commerce uses similar mechanisms for assigning catalogs and price lists to customer profiles. It adds CatalogProfilePropertySetter
and PriceListProfilePropertySetter
components to the profilePropertySetters
property of the /atg/dynamo/servlet/dafpipeline/ProfilePropertyServlet
component in the DAF servlet pipeline:
profilePropertySetters+=/atg/userprofiling/CatalogProfilePropertySetter,\
/atg/userprofiling/PriceListProfilePropertySetter
To set the profile’s priceList
and salePriceList
properties, the PriceListProfilePropertySetter
component calls the /atg/commerce/pricing/priceLists/PriceListManager
component’s determinePriceList
method, which calls the /atg/commerce/util/ContextValueRetriever
component. If this component’s useProfile
property is false
(the default), the following logic is applied:
If there is a current site (the application is running in a multisite environment), use the value of the
defaultListPriceList
anddefaultSalePriceList
properties of thesiteConfiguration
item for the current site. For more information, refer to Assigning Price Lists and Catalogs in a Multisite Configuration.Otherwise, use the
DefaultPriceListId
andDefaultSalePriceListId
values set in thePriceListManager
component.
For details on the ContextValueRetriever
, including information on when you should override the useProfile
property for price lists, see ContextValueRetriever Class.