Searching the catalog

After the index file is built, customers can search an organization's active selling catalog by specifying search criteria.

Customers can either enter arbitrary terms, such as Laptop Computer, as search criteria, or enter item attributes based on categories, to locate specific items. When customers perform keyword searches in a parent category, only items from the parent category are returned; items from child categories are not returned.

Advanced search enables customers to specify item fields and values as search criteria. Advanced search also supports the Lucene query parser. Customers can use special Lucene operators and terms, such as wildcards (#, *), to refine their search.

Note: The hyphen (-) character is considered as a special character in lucene. Therefore, do not use this character when you search for an item or price list. More information about the Lucene terms and operators that are supported can be found at Lucene website.

Search results return a list of items that match the query formed from the search criteria. Typically, item information is retrieved from the Sterling Selling and Fulfillment Foundation database. However, information for external attributes is retrieved directly from the index. Information for internal attributes can also be retrieved from the index by setting an attribute's Store value to Y in the extended XML configuration file. After information is retrieved, it is displayed to the customer. The results also display a list of attributes and categories that match the query and the number of matching items for each attribute and category.

Sterling Selling and Fulfillment Foundation uses Ehcache functionality and SearchIndexCache for storing pre-search results of items within categories and filtered attributes in the catalog for search index. For detailed information about Ehcache functionality and how you can configure the elements and settings to enhance your cache for catalog search index, see the Ehcache website.

Note: If the application server is not shut down gracefully, the Ehcache files must be cleaned up manually before restarting the application server. The path name for the location where the Ehcache files are stored is the path name specified in the diskStore element of cacheoverride.xml. For example, <diskStore path="/<pathname>"/>.
Note: The cache is loaded independently for each application server. In some cases, if you are using multiple application servers, different users who are logged into different application servers may not get the same search results when a new index is activated.
Note: See information pertaining to the searchCatalogIndex API in the Sterling Selling and Fulfillment Foundation: Javadocs.