Direct links to fixes
APAR status
Closed as program error.
Error description
When searching multiple terms in the store locator, like a Canadian zip code, the search terms are separated by a single quote instead of a comma. This causes a parsing error similar to this: [12/21/12 13:04:40:957 EST] 00000079 bod 1 com.ibm.commerce.foundation.server.command.bod.BusinessObjectDoc umentProcessor processBusinessObjectDocument(BusinessObjectDocumentType, String) catch throwable com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.TokenMgrError: Lexical error at line 1, column 132. Encountered: <EOF> after : "\'BannerId=\"RN\")]" at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslatorTokenManager.getNextToken(XPathTranslatorTo kenManager.java:1083) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.jj_ntk(XPathTranslator.java:1499) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.searchfunc(XPathTranslator.java:1050) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.relationalExpr(XPathTranslator.java:942) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.andExpr(XPathTranslator.java:832) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.orExpr(XPathTranslator.java:795) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.predicateExpr(XPathTranslator.java:785) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.predicate(XPathTranslator.java:679) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.relativeLocationPath(XPathTranslator.java: 725) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.XPath(XPathTranslator.java:663) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.SearchExpression(XPathTranslator.java:555) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathTranslator.parse(XPathTranslator.java:538) at com.ibm.commerce.foundation.internal.server.services.dataaccess. xpath.XPathUtil.formatXPath(XPathUtil.java:88) ...
Local fix
Problem summary
USERS AFFECTED: All WebSphere Commerce 7.0.0.6 users who enabled store locator search and implemented the use of multiple search terms. For example, in a jsp, the getData tag may contain multiple parameter with the same name "Search", but with different values: <wcf:getData type="com.ibm.commerce.store.facade.datatypes.PhysicalStoreType[ ]" var="physicalStores" varException="physicalStoreException" expressionBuilder="findPhysicalStoresFromGeoCodeWithAttributes" varShowVerb="showVerb"> <wcf:param name="accessProfile" value="IBM_Store_Details" /> <wcf:param name="maxStores" value="25" /> <wcf:param name="Search" value="Type='Regular Store'" /> <wcf:param name="Search" value="BeautyCenter='true'" /> <wcf:param name="latitude" value="43.9119362" /> <wcf:param name="longitude" value="-79.4686307" /> </wcf:getData> PROBLEM ABSTRACT: A single quote is used to separate search terms in the store locator instead of a comma, causing a parsing error. BUSINESS IMPACT: Store locator search with multiple search terms, like zip codes separated with spaces, will fail. RECOMMENDATION: An alternative is to put all the search terms in a single line with comma separated list. For example, one "Search" term can be used with comma separated list of parameters: <wcf:getData type="com.ibm.commerce.store.facade.datatypes.PhysicalStoreType[ ]" var="physicalStores" varException="physicalStoreException" expressionBuilder="findPhysicalStoresFromGeoCodeWithAttributes" varShowVerb="showVerb"> <wcf:param name="accessProfile" value="IBM_Store_Details" /> <wcf:param name="maxStores" value="25" /> <wcf:param name="Search" value="Type='Regular Store', BeautyCenter='true'" /> <wcf:param name="latitude" value="43.9119362" /> <wcf:param name="longitude" value="-79.4686307" /> </wcf:getData>
Problem conclusion
Code was changed to use a comma as the search term separate instead of a single quote. It will avoid the incorrect conversion after customizing jsp with multiple "Search" terms. ------------------------------------------------------------- The latest available maintenance information can be obtained from the Recommended Fixes for WebSphere Commerce technote: http://www.ibm.com/support/docview.wss?rs=3046&uid=swg21261296
Temporary fix
Comments
APAR Information
APAR number
JR45314
Reported component name
WC BUS EDITION
Reported component ID
5724I3800
Reported release
700
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-01-08
Closed date
2013-03-07
Last modified date
2013-04-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
WC BUS EDITION
Fixed component ID
5724I3800
Applicable component levels
R700 PSY
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYSYL","label":"WebSphere Commerce Enterprise"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
02 April 2013