ATG Store and ATG Home have separate catalogs that share some categories. On each site, the store.war/navigation/gadgets/catalog.jsp
gadget (which is included by the <crs:pageContainer>
tag) creates a menu bar. The menu bar, which is displayed at the top of most pages, lists the top-level categories of the site. For example, on the ATG Home site, the top-level categories are Gift Shop, Tables, Seating, Storage and Display, Home Accents, and New Items:
Hovering the cursor over an entry displays a menu of its subcategories, and a list of featured products in the category:
Selecting a category from the menu bar takes the customer to the corresponding category page. Because category pages are Endeca-driven, they are accessed using Endeca query URLs. These URLs encode Endeca dimension values in query parameters. For example, the URL for a category page might be:
http://hostname
:port
/crs/storeus/browse?N=10059
The /browse
portion of the URL triggers a page request in the Endeca Assembler, and the N=10059
query parameter specifies the ID of the product.category
dimension value that corresponds to the ATG category.
To construct the links for the categories, catalog.jsp
first obtains the category IDs of the top-level categories by looking up the child categories of the current site’s root category:
<dsp:getvalueof var="topLevelCategories"
bean="Profile.catalog.rootNavigationCategory.childCategories" />
It also obtains the category IDs of the subcategories by iterating over the list of top-level category IDs and looking up the child categories of the top-level categories.
For each category ID it retrieves, catalog.jsp
invokes the /atg/commerce/endeca/cache/DimensionValueCacheDroplet
servlet bean to look up the URL of the corresponding category page in the dimension value cache.
See the ATG-Endeca Integration Guide for information about DimensionValueCacheDroplet
and the dimension value cache.