Find catalog entry summaries by name
This service request returns a list of catalog entries that satisfy the search criteria on the name. For each returned catalog entry, the level of information provided is the same as the service getCatalogEntrySummaryByID. By default, the SKUs are excluded from the search result due to performance consideration.
Request
Request BOD GetCatalog Access profile WC_CatalogEntrySummaryProfile Schema /Catalog-DataObjects/xsd/OAGIS/9.0/Overlays/IBM/Commerce/BODs/GetCatalog.xsd Service data object GetCatalogEntryType
Sample request BOD
<_cat:GetCatalogEntry xmlns:_cat="http://www.ibm.com/xmlns/prod/commerce/9/catalog" xmlns:_wcf="http://www.ibm.com/xmlns/prod/commerce/9/foundation" xmlns:oa="http://www.openapplications.org/oagis/9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <oa:ApplicationArea xsi:type="_wcf:ApplicationAreaType"> <oa:CreationDateTime> 2007-01-25T16:12:49.561Z </oa:CreationDateTime> <oa:BODID>cf662760-acb8-11db-a0a9-832d45b91d51</oa:BODID> <_wcf:BusinessContext> <_wcf:ContextData name="storeId">511</_wcf:ContextData> </_wcf:BusinessContext> </oa:ApplicationArea> <_cat:DataArea> <oa:Get maxItems="2" recordSetStartNumber="0"> <oa:Expression expressionLanguage="wcf:XPath"> {_wcf.ap=WC_CatalogEntrySummaryProfile&wc_nameOp=EQUAL&wc_searchTermScope=2&wc_isSKUexcluded=true} /CatalogEntry[Description[contains(@Name,'"Craven" Wineglasses')]] </oa:Expression> </oa:Get> </_cat:DataArea> </_cat:GetCatalogEntry>
Response
Response BOD ShowCatalog Schema /Catalog-DataObjects/xsd/OAGIS/9.0/Overlays/IBM/Commerce/BODs/ShowCatalog.xsd Service data object ShowCatalogEntryType The response contains the following information:
/CatalogEntry/@catalogEntryTypeCode /CatalogEntry/CatalogEntryIdentifier/UniqueID /CatalogEntry/CatalogEntryIdentifier/ExternalIdentifier/@ownerID /CatalogEntry/CatalogEntryIdentifier/ExternalIdentifier/PartNumber /CatalogEntry/Description/@language /CatalogEntry/Description/Name /CatalogEntry/Description/ThumbNail /CatalogEntry/Description/ShortDescription /CatalogEntry/ListPrice/Price/@currency /CatalogEntry/ListPrice/Quantity /CatalogEntry/Price/StandardPrice/Price/Price/@currency /CatalogEntry/Price/StandardPrice/Price/Quantity /CatalogEntry/Price/ContractPrice/@minimumQuantity /CatalogEntry/Price/ContractPrice/Price/Price/@currency /CatalogEntry/Price/ContractPrice/Price/Quantity /CatalogEntry/Price/ContractPrice/ContractIdentifier/UniqueID /CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@majorVersionNumber /CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@minorVersionNumber /CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@origin /CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@ownerID /CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/Name
Sample response BOD
<_cat:ShowCatalogEntry xmlns:Oagis9="http://www.openapplications.org/oagis/9" xmlns:_cat="http://www.ibm.com/xmlns/prod/commerce/9/catalog" xmlns:_wcf="http://www.ibm.com/xmlns/prod/commerce/9/foundation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Oagis9:ApplicationArea xsi:type="_wcf:ApplicationAreaType"> <Oagis9:CreationDateTime> 2007-01-25T16:29:53.734Z </Oagis9:CreationDateTime> <Oagis9:BODID> 31fba9c0-acbb-11db-986f-827045b7cf58 </Oagis9:BODID> </Oagis9:ApplicationArea> <_cat:DataArea> <Oagis9:Show recordSetCompleteIndicator="true" recordSetCount="2" recordSetStartNumber="0" recordSetTotal="2" /> <_cat:CatalogEntry catalogEntryTypeCode="ProductBean"> <_cat:CatalogEntryIdentifier> <_wcf:UniqueID>51100000119</_wcf:UniqueID> <_wcf:ExternalIdentifier ownerID="7000000000000000002"> <_wcf:PartNumber>TAWI-04</_wcf:PartNumber> </_wcf:ExternalIdentifier> </_cat:CatalogEntryIdentifier> <_cat:Description language="-1"> <_cat:Name>"Craven" Wineglasses</_cat:Name> <_cat:Thumbnail> images/catalog/TAWI_04_sm.jpg </_cat:Thumbnail> <_cat:ShortDescription> "Craven" wineglasses. </_cat:ShortDescription> </_cat:Description> <_cat:ListPrice> <_wcf:Price currency="USD">7.95</_wcf:Price> </_cat:ListPrice> <_cat:Price> <_wcf:StandardPrice> <_wcf:Price> <_wcf:Price currency="USD">8.99</_wcf:Price> </_wcf:Price> </_wcf:StandardPrice> <_wcf:ContractPrice minimumQuantity="1.0"> <_wcf:Price> <_wcf:Price currency="USD">8.99</_wcf:Price> </_wcf:Price> <_wcf:ContractIdentifier> <_wcf:UniqueID>51100000001</_wcf:UniqueID> <_wcf:ExternalIdentifier majorVersionNumber="1" minorVersionNumber="0" origin="0" ownerID="7000000000000000002"> <_wcf:Name> ConsumerDirectATP Default Contract </_wcf:Name> </_wcf:ExternalIdentifier> </_wcf:ContractIdentifier> </_wcf:ContractPrice> </_cat:Price> </_cat:CatalogEntry> <_cat:CatalogEntry catalogEntryTypeCode="ItemBean"> <_cat:CatalogEntryIdentifier> <_wcf:UniqueID>51100000120</_wcf:UniqueID> <_wcf:ExternalIdentifier ownerID="7000000000000000002"> <_wcf:PartNumber>TAWI-0401</_wcf:PartNumber> </_wcf:ExternalIdentifier> </_cat:CatalogEntryIdentifier> <_cat:Description language="-1"> <_cat:Name>"Craven" Wineglasses</_cat:Name> <_cat:Thumbnail> images/catalog/TAWI_04_sm.jpg </_cat:Thumbnail> <_cat:ShortDescription> "Craven" wineglasses. </_cat:ShortDescription> </_cat:Description> <_cat:ListPrice> <_wcf:Price currency="USD">7.95</_wcf:Price> </_cat:ListPrice> <_cat:Price> <_wcf:StandardPrice> <_wcf:Price> <_wcf:Price currency="USD">8.99</_wcf:Price> </_wcf:Price> </_wcf:StandardPrice> <_wcf:ContractPrice minimumQuantity="1.0"> <_wcf:Price> <_wcf:Price currency="USD">8.99</_wcf:Price> </_wcf:Price> <_wcf:ContractIdentifier> <_wcf:UniqueID>51100000001</_wcf:UniqueID> <_wcf:ExternalIdentifier majorVersionNumber="1" minorVersionNumber="0" origin="0" ownerID="7000000000000000002"> <_wcf:Name> ConsumerDirectATP Default Contract </_wcf:Name> </_wcf:ExternalIdentifier> </_wcf:ContractIdentifier> </_wcf:ContractPrice> </_cat:Price> </_cat:CatalogEntry> </_cat:DataArea> </_cat:ShowCatalogEntry>
Usage
To use this service request on a JSP page use the expression-builder, findCatalogEntriesSummaryByName, and pass the searchTermScope parameter.
The expression-builder maps to the following XPath expression:
{_wcf.ap=$accessProfile$;wc_nameOp=$nameOp$;wc_searchTermScope=$searchTermScope$;wc_isSKUexcluded=$isSKUexcluded$}/CatalogEntry[Description[contains(@Name,$name$)]]
The defaults are:
- accessProfile=WC_CatalogEntrySummaryProfile
- wc_searchTermScope=2
- isSKUexcluded=true
A searchTermScope set to 2 indicates that only CATENTDESC.name is used in the search.
The parameter nameOp can take 2 different values: "LIKE" or "EXACT"; the parameter name specifies the term to search for. If nameOp is set to EXACT then the databean will perform an exact match search for the term name. If the nameOp is set to LIKE then the data bean will perform a like search for the term name.
This service request uses the
CatEntrySearchListDataBean data bean.
Exceptions
If there is an error the error is reported in the Response message. You can see the error details in the trace log, SystemOut.log.
Customization
The following extensions are supported:
- Create your own implementation of the interface ComposeCatalogEntryTaskCmd. The ComposeCatalogEntryTaskCmd and yourAccessProfileName control the information returned by the service.
Related concepts
../../com.ibm.commerce.business_process.doc/concepts/processFind_product_(ConsumerDirect).htm
Design pattern for Get service implementation
Related Reference
WebSphere Commerce foundation tag library