Migrar la búsqueda basada en BOD de Feature Pack 8 IBM Websphere Commerce Version 7
Migre las configuraciones y el índice basado en BOD HCL Commerce Search a la búsqueda basada en REST en HCL Commerce versión 9.0.0.3+.
A partir de la versión 9.0.0.5, HCL Commerce Version 9 utiliza Solr 7.3.1. Solr 7.3.1 no admite datos de índice de versiones anteriores de Solr. Este documento incluye instrucciones sobre cómo convertir los datos de índice para que la nueva versión pueda utilizarlos.
- La búsqueda basada en BOD es discontinua en HCL Commerce Version 9.
- El servidor de HCL Commerce Search tiene su propio contenedor en el entorno de producción. Despliegue el servidor de HCL Commerce Search como parte del conducto CI/CD.
- El modelo de programación para HCL Commerce Search ha cambiado para coincidir con la nueva compilación y el proceso de despliegue en HCL Commerce Version 9. La base del nuevo modelo de programación es separar elementos de HCL Commerce Search personalizados del código de producto, que reduce el coste de recursos de mantenimiento y funcionamiento. Las personalizaciones de IBM Websphere Commerce Version 7 siguientes se deben actualizar para el nuevo modelo de programación:
- El tiempo de ejecución de Solr se actualiza a 5.5.4, de modo que las personalizaciones en Solr se deben actualizar para seguir el nuevo modelo de programación.
- Los programas de utilidad de HCL Commerce Search se sustituyen por el servicio del programa de utilidad del contenedor, que incluye di-preprocess, di-buildindex, di-calculateprice y indexprop. El programa de utilidad SetupSearchIndex se deja de mantener. El directorio principal del índice se sincroniza automáticamente con la tabla SRCHCONF y la tabla SRCHCONFEXT cuando se ha iniciado el servidor HCL Commerce Search. Esto le permite crear un nuevo núcleo maestro, núcleo de extensión o lenguaje para mantener las tablas SRCHCONF y SRCHCONFEXT. El núcleo del espacio de trabajo se crea automáticamente si el servidor de HCL Commerce Search detecta el esquema del espacio de trabajo en un entorno de creación.
- En HCL Commerce Version 9, la vista de la tabla se utiliza para realizar el preproceso y la creación del índice; por consiguiente, las personalizaciones en la creación del preproceso y del índice se deben reconfigurar según la nueva guía de programación.
- En HCL Commerce Version 9, el planificador común basado en la fundación está habilitado en el servidor HCL Commerce Search. Los entornos de creación utilizan el planificador para replicar el índice de los entornos de creación al repetidor de HCL Commerce Search.
- HCL Commerce Version 9 se ha movido a JAX-RS 2.0(JSR-339). Además, la API de la documentación es Swagger 2.0.
- IBM Websphere Commerce Version 7 utilizaba llamadas JDBC directas, que atravesaban DSL (data service layer) a la base de datos. En HCL Commerce Version 9, se utiliza la consulta nativa JPA 2.1 (EclipseLink). Las consultas personalizadas de versiones anteriores se transfieren al nuevo servicio de consulta. No se requiere ninguna configuración adicional.
- En HCL Commerce Version 9, cuando el precio o el inventario funcionan como núcleos ampliados,
SolrJoin
conserva la relación de documento entre el núcleo principal deCatalogEntry
y el subnúcleo de precio e inventario.MultipleQueryComponent
yMultipleFacetComponent
, que se utilizaron para unir o filtrar los subnúcleos en IBM Websphere Commerce Version 7, ahora están inhabilitados de forma predeterminada. Para gestionar los campos de facetas y resultados de índices de extensión, un nuevoSearchCatalogEntryExtensionIndexPostprocessor
realiza una subconsulta en cada uno de los índices, a continuación se une con el índice principal. También se ha introducido un nuevo parámetro de unión en wc-search.xml. Es necesario implementar cualquier personalización de IBM Websphere Commerce Version 7 en un índice de extensión para utilizarSolrJoin
.Nota: Si es necesario, puede restaurar la funcionalidad anterior deMultipleQueryComponent
yMultipleFacetComponent
.
Antes de empezar
- Descarte todas las tablas temporales y temporales personalizadas de su base de datos, excepto las siguientes tablas temporales:
TI_DELTA_CATENTRY
TI_DELTA_CATGROUP
TI_DELTA_INVENTORY
Sus tablas temporales usan un prefijo
TI_
. Mientras que sus tablas temporales personalizadas usan un prefijoXI_
.Los cambios realizados en las tablas temporales entre las versiones anteriores de HCL Commerce y HCL Commerce Version 9. Si no se logran descartar las tablas temporales pueden producirse errores de preproceso, por ejemplo, SQLSTAE=56098. Para obtener más información sobre las tablas de búsqueda temporales HCL Commerce, consulte definición de esquema de tabla temporal.
Procedimiento
- Migre los núcleos de índice personalizados. Los siguientes subpasos ilustran cómo migrar el núcleo ampliado
xCatalogEntry
para el catálogo maestro10001
como ejemplo. Estos pasos deben repetirse para todos los núcleos de índice personalizados que desee migrar. - Vuelva a implementar los campos de índice personalizados y los scripts de preproceso y de creación de índice.
- Migre los archivos de configuración de búsqueda. Las actualizaciones de configuración que haya realizado en los directorios IBM Websphere Commerce Version 7 WC_eardir deben copiarse en los directorios de extensión correspondientes en el directorio Search_eardir en HCL Commerce Version 9. Los directorios de extensión son com.ibm.commerce.foundation-ext y com.ibm.commerce.search-ext.
- Registre los perfiles de búsqueda personalizados asociándolos a un servicio REST.
- Vuelva a aplicar todas las configuraciones personalizadas al archivo wc-search.xml.Notes:
- Suprima todas las configuraciones de conexión que pertenezcan a un servidor de Solr remoto. En el servidor de búsqueda de HCL Commerce Version 9, la conexión con Solr está incorporada.
- Puesto que los núcleos se leen ahora desde las tablas SRCHCONF y SRCHCONFEXT, elimine todos los núcleos registrados del archivo wc-search.xml.
- Los perfiles de búsqueda personalizados definidos en el servidor de HCL Commerce se deben volver a definir en el directorio de extensión de servidor de búsqueda de HCL Commerce.
- Se deben actualizar los perfiles de búsqueda personalizados que amplían un perfil de búsqueda predeterminado en el servidor de HCL Commerce. En el servidor de búsqueda, se han introducido perfiles de búsqueda predeterminados nuevos que contienen diferentes nombres o convenios de denominación.
- Se deben actualizar los perfiles de búsqueda personalizados que utilizan cualquiera de los proveedores de consulta de búsqueda, procesadores o filtros de resultados de búsqueda predeterminados. En el servidor de búsqueda se han introducido alternativas nuevas que contienen diferentes nombres o utilizan diferentes convenios de denominación.
- Vuelva a aplicar las configuraciones personalizadas que haya realizado en los archivos wc-component.xml en los directorios com.ibm.commerce.foundation-ext y com.ibm.commerce.search-ext.
La mayoría de las propiedades personalizadas relacionadas con la búsqueda que se definen en el archivo wc-component.xml se pueden volver a utilizar en el servidor de búsqueda, excepto la propiedad de modalidad de precio global. La configuración del modo de precio ahora se almacena en la tabla STORECONF. Para obtener más información sobre las propiedades de configuración de búsqueda en la tabla STORECONF, consulte Propiedades de configuración de búsqueda en la tabla STORECONF.
- Migre los mediadores de objetos personalizados que haya realizado en el archivo IBM Websphere Commerce Version 7 wc-business-objectmediator.xml a HCL Commerce Version 9 wc-component.xml.
El servidor de búsqueda no soporta los mediadores de objetos de negocio. Por lo tanto, las personalizaciones que haya aplicado al archivo wc-business-object-mediator.xml deben trasladarse al archivo wc-component.xml.
Por ejemplo, las correlaciones entre un campo personalizado
userData
con un campo de índice interno o campo de base de datos debe utilizar ahora las correlaciones correctas en el archivo wc-component.xml. El ejemplo siguiente muestra cómo una correlaciónuserData
existente en el archivo wc-business-object-mediator.xml del servidor de HCL Commerce se puede mover al archivo wc-component.xml personalizado del servidor de búsqueda. - Vuelva a aplicar los archivos (TPL) de plantilla de consulta de base de datos personalizada.
El servidor de búsqueda soporta DSL. Sin embargo, no soportan los EMF, SDO y los esquemas lógicos. Por lo tanto, los datos recuperados de la base de datos se deben analizar por código personalizado y añadir a la respuesta principal donde sea aplicable. Las consultas personalizadas relacionadas con la búsqueda se pueden volver a utilizar en el servidor de búsqueda. Para obtener más información, consulte Crear un postprocesador de consulta personalizado.
- El servidor de búsqueda no soporta ningún código de plantilla de consulta. Cada uno de los parámetros de consulta debe pasarse a los servicios de consulta como parámetros de consulta.
- Para permitir que la consulta personalizada se ejecute bajo el esquema del espacio de trabajo, añada
bull$SCHEMA$
a la tabla. - Si la consulta personalizada tiene una sintaxis de consulta diferente para Oracle, defina un nombre de consulta nuevo. En el código, utilice un nombre de consulta diferente después de determinar
dbType
, por ejemplo:<!-- ======================================================================================= --> <!-- Retrieve search configuration for given master catalog by all store's default language --> <!-- ======================================================================================= --> ... BEGIN_SQL_STATEMENT name=SELECT_SRCHCONF_DEFAULT_ORACLE base_table=SRCHCONF sql= SELECT STORECAT.CATALOG_ID, STORE.LANGUAGE_ID, SRCHCONF.INDEXSCOPE, SRCHCONF.CONFIG FROM $SCHEMA$.STORECAT STORECAT, $SCHEMA$.STORE STORE, $SCHEMA$.SRCHCONF SRCHCONF WHERE STORECAT.MASTERCATALOG = '1' AND STORECAT.STOREENT_ID = STORE.STORE_ID AND STORE.STATUS IN (?status?, 1) AND TO_CHAR(STORECAT.CATALOG_ID) = SRCHCONF.INDEXSCOPE AND SRCHCONF.INDEXTYPE = ?indexType? END_SQL_STATEMENT
Todos los elementos personalizados que necesitan recuperar datos de la base de datos, deben utilizarSearchQueryService
para leer datos, tal como se ve en el ejemplo de código siguiente:SearchQueryService service = new SearchQueryService(); HashMap parameters = new HashMap(); ArrayList list = new ArrayList(); list.add(getMasterCatalog(coreName)); parameters.put(STR_MASTER_CATALOG_ID, list); list = new ArrayList(); list.add(tokens[1]); parameters.put(STR_INDEX_TYPE, list); list = new ArrayList(); list.add(getLanguageId(coreName)); parameters.put(LANGUAGE_ID, list); List<Object[]> results = service.executeQueryName("SELECT_SRCHCONFEXT", parameters); if (results.size() > 0) { indexSubtype = new ArrayList<String>(); final String STR_INDEXSUBTYPE = "INDEXSUBTYPE"; for (Object[] row : results) { indexSubtype.add((String) row[1]); } imapSearchIndexSubtype.put(coreName, indexSubtype); }
- Migre los elementos Java personalizados.
Debido al uso de contenedorización, todas las personalizaciones deben ser creadas por el script WCB e implementadas por su canalización CI/CD. De forma predeterminada, los activos de configuración personalizados se pueden agregar en el directorio search-config-ext y los activos de Java personalizados se pueden agregar en el directorio search-logic-ext. A continuación, la secuencia de comandos WCB predeterminada y la canalización CI/CD pueden crear e implementar esos activos en el contenedor de búsqueda.
- Migre servicios de búsqueda de escaparate.
En IBM Websphere Commerce Version 7, la navegación de catálogo utilizaba
getDataTag
. En HCL Commerce Version 9, puede utilizarRESTTag
equivalente basado en REST.Las páginas de escaparate personalizado que utilizan los servicios BODCatalogNavigationView
deben actualizarse para utilizar los nuevos servicios REST correspondientes. Por ejemplo, el siguiente fragmento de código es un servicio de búsqueda de BODgetData
que se utiliza para obtener productos por categoría:<wcf:getData type="com.ibm.commerce.catalog.facade.datatypes.CatalogNavigationViewType" var="catalogNavigationView" expressionBuilder="getCatalogEntrySearchResultsByIDView" scope="request" varShowVerb="showCatalogNavigationView" maxItems="100" recordSetStartNumber="0" scope="request"> <c:forEach var="marketingSpotData" items="${marketingSpotDatas.baseMarketingSpotActivityData}"> <c:if test='${marketingSpotData.dataType eq "CatalogEntryId"}'> <wcf:param name="UniqueID" value="${marketingSpotData.uniqueID}"/> </c:if> </c:forEach> <wcf:contextData name="storeId" data="${WCParam.storeId}" /> <wcf:contextData name="catalogId" data="${WCParam.catalogId}" /> </wcf:getData> <c:set var="eSpotCatalogIdResults" value="${catalogNavigationView.catalogEntryView}"/>
El siguiente fragmento de código es el servicio basado en REST equivalente:<wcf:getData type="com.ibm.commerce.catalog.facade.datatypes.CatalogNavigationViewType" var="catalogNavigationView" expressionBuilder="getCatalogEntrySearchResultsByIDView" scope="request" varShowVerb="showCatalogNavigationView" maxItems="100" recordSetStartNumber="0" scope="request"> <c:forEach var="marketingSpotData" items="${marketingSpotDatas.baseMarketingSpotActivityData}"> <c:if test='${marketingSpotData.dataType eq "CatalogEntryId"}'> <wcf:param name="UniqueID" value="${marketingSpotData.uniqueID}"/> </c:if> </c:forEach> <wcf:contextData name="storeId" data="${WCParam.storeId}" /> <wcf:contextData name="catalogId" data="${WCParam.catalogId}" /> </wcf:getData> <c:set var="eSpotCatalogIdResults" value="${catalogNavigationView.catalogEntryView}"/>
Los datos de respuesta se formatean en una respuesta de notación de puntos parecida a BOD a fin de minimizar los cambios que son necesarios en el escaparate. En algunos casos, la respuesta se simplifica y se aplana en parejas de nombre-valor más simples, en lugar de utilizar correlaciones internas para agrupar determinados campos.
Puede examinar la respuesta JSON imprimiendo el objeto de respuesta utilizando el código siguiente:
<wcf:json object="${catalogNavigationView}"/>
- Correlacione los servicios de BOD con los servicios de REST.
Todos los servicios de búsqueda de BOD pueden ser cubiertos por servicios de búsqueda REST. Hay tres manejadores de búsqueda principales:
CategoryViewHandler
,ProductViewHandler
ySiteContentHandler
. Cada uno de ellos realiza una función de búsqueda diferente. Por ejemplo,ProductViewHandler
puede buscar por Category, productId, ProductID, partNumber, partNumbers y searchTerm.Utilice la tabla siguiente para ayudar a correlacionar los servicios de BOD con los servicios de REST.Tabla para mostrar la correlación entre los servicios BOD y REST.
Servicio BOD Creador de expresiones Recurso REST Servicio REST CatalogNavigationView getCatalogNavigationView ProductViewHandler (Búsqueda) store/{storeId}/productview/bySearchTerm/{searchTerm} getCatalogNavigationAttachmentView store/{storeId}/productview/bySearchTerm/{searchTerm} getCatalogNavigationViewByCategory store/{storeId}/productview/byCategory/{categoryId} getCatalogNavigationBreadCrumbView store/{storeId}/productview/byCategory/{categoryId} getCatalogNavigationCatalogEntryView store/{storeId}/productview/byId/{productId}, store/{storeId}/productview/byIds getCatalogEntryViewAllWithoutAttachmentsByID store/{storeId}/productview/byId/{productId}, store/{storeId}/productview/byIds getCatalogEntrySearchResultsByIDView store/{storeId}/productview/byId/{productId}, store/{storeId}/productview/byIds getCatalogEntryViewParentInfoByIDNoEntitlementCheck store/{storeId}/productview/byId/{productId}, store/{storeId}/productview/byIds getCatalogEntryViewForShoppingCart store/{storeId}/productview/byId/{productId}, store/{storeId}/productview/byIds getCatalogEntryViewPriceWithAttributesByID store/{storeId}/productview/byId/{productId}, store/{storeId}/productview/byIds getCatalogNavigationCatalogGroupView CategoryViewHandler (Búsqueda) store/{storeId}/categoryview/byId/{categoryId}, store/{storeId}/categoryview/byIds getCatalogNavigationCatalogGroupViewByIdentifier store/{storeId}/categoryview/{categoryIdentifier} getCatalogNavigationCatalogGroupViewByCatalogId store/{storeId}/categoryview/@top getCatalogNavigationCatalogGroupViewByParentCatalogGroup store/{storeId}/categoryview/byParentCategory/{parentCategoryId} getWebContentView SiteContentHandler (Búsqueda) store/{storeId}/sitecontent/webContentsBySearchTerm/{searchTerm} store/{storeId}/sitecontent/brandSuggestions store/{storeId}/sitecontent/categorySuggestions - Importe EnvironmentSetup.jspf en la página donde ha utilizado para llamar al servicio de BOD para seguir la guía de programación JSP. En este archivo JSPF,
searchHostName
ysearchContextPath
se definen, de modo que en el JSP donde desea llamar a REST de búsqueda, esta variable puede utilizarse directamente. - Utilizando la correlación entre BOD con la búsqueda REST, busque el servicio REST equivalente y, a continuación, cambie
getDataTag
aRESTtag
. - Con la solicitud de BOD, la parte de la tienda podría utilizar el nombre
CatalogNavigationViewType
para recuperar el objeto necesario de la respuesta de la solicitud de BOD; este nombre básicamente representa una respuesta de negocio de una solicitud de examinación de catálogo.
- Importe EnvironmentSetup.jspf en la página donde ha utilizado para llamar al servicio de BOD para seguir la guía de programación JSP. En este archivo JSPF,
- Correlacione los perfiles de búsqueda de BOD para los perfiles de búsqueda de REST. La tabla siguiente ilustra la correlación entre los perfiles de búsqueda que utilizan los servicios de
CatalogNavigationViewBOD
y los perfiles de búsqueda de REST correspondientes. Hay varios factores que diferencian los perfiles de búsqueda entre ellos. Al comparar los perfiles de búsqueda, tenga en cuenta los factores siguientes.- Campos de consulta
- Controla el ámbito de búsqueda.
- Campos de resultados
- Controla los campos devueltos.
- Proveedores de expresiones
- Contribuye al objeto de criterios de selección.
- Preprocesadores
- Prepara el objeto de expresión de búsqueda final.
- Postprocesadores
- Media la respuesta de búsqueda y contribuye al objeto de respuesta final.
Correlación entre perfiles de búsqueda de BOD y REST.
Perfil de búsqueda de BOD Perfil de búsqueda de REST IBM_ComposeProductListByCategoryId
IBM_findProductsByCategory
IBM_ComposeCategoryFacetListByCategoryId
En desuso por IBM_findProductsByCategory
IBM_BreadCrumb
IBM_BreadCrumbByCategoryUniqueId
IBM_findFacetsByCategory
En desuso por IBM_findProductsByCategory
I BM_ComposeFacetListByCategoryId
IBM_ComposeFacetListByCategoryId
IBM_findCatalogEntryWithoutDescriptionByNameAndShortDescription
IBM_findProductsBySearchTerm
IBM_findCatalogEntryWithoutDescriptionByNameAndShortDescriptionInDetail
En desuso por IBM_findProductsBySearchTerm
IBM_findCatalogGroupByFacet
En desuso por IBM_findProductsBySearchTerm
IBM_findCatalogEntryByName
IBM_findProductsByNameOnly
IBM_findCatalogEntryByUnstructureField
IBM_findProductsByUnstructureOnly
IBM_findCatalogEntryByNameAndShortDescriptionOnly
IBM_findProductsByNameAndShortDescriptionOnly
IBM_findCatalogEntryByNameAndShortDescription
En desuso por IBM_findProductsByNameAndShortDescriptionOnly
IBM_findCatalogEntryByNameAndShortDescriptionInDetail
En desuso por IBM_findProductsByNameAndShortDescriptionOnly
IBM_findCatalogEntryIdByNameAndShortDescription
En desuso por IBM_findProductsByNameAndShortDescriptionOnly
IBM_findCatalogEntryDetails
IBM_findProductByIds_Details
IBM_findCatalogEntryAll
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntryAll_PriceMode
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntrySKUs
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntryDetailsWithComponents
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntryDetailsWithComponentsAndAttachments
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntryDetailsWithMerchandisingAssocDetails
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntryDetails_PriceMode
En desuso por IBM_findProductByIds_Details
IBM_findComponentsSummary
En desuso por IBM_findProductByIds_Details
IBM_findComponentsSummaryDetails
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntryDetailsWithMerchandisingAssocSummary
En desuso por IBM_findProductByIds_Details
IBM_fetchRelatedCatalogEntryDetailedInfo
En desuso por IBM_findProductByIds_Details
IBM_findCatalogEntrySummary
IBM_findProductByIds_Summary
IBM_findCatalogEntryByID
En desuso por IBM_findProductByIds_Summary
IBM_findCatalogEntryPrice
En desuso por IBM_findProductByIds_Summary
IBM_findCatalogEntryDynamicKitSummary
En desuso por IBM_findProductByIds_Summary
IBM_fetchRelatedCatalogEntrySummaryInfo
En desuso por IBM_findProductByIds_Summary
IBM_CatalogEntryCategoryEntitlement
En desuso por IBM_findProductByIds_Summary
IBM_CatalogEntryEntitlement
En desuso por IBM_findProductByIds_Summary
IBM_findCatalogEntryPriceWithAttributes_PriceMode
En desuso por IBM_findProductByIds_Summary
IBM_findCatalogEntryAttachments
IBM_findProductByIdsWithAttributesAndAttachments
IBM_findCatalogEntryDetailsWithAttachments
En desuso por IBM_findProductByIdsWithAttributesAndAttachments
IBM_findCatalogEntryPriceWithAttributes
En desuso por IBM_findProductByIdsWithAttributesAndAttachments
IBM_findAttachmentByCatentryId
En desuso por IBM_findProductByIdsWithAttributesAndAttachments
IBM_findCatalogEntryParentInfoNoEntitlementCheck
IBM_findProductByIds_Summary_WithNoEntitlementCheck
IBM_findCatalogEntryForShoppingCart
IBM_findProductByIds_Summary_WithNoEntitlementCheck
IBM_findCatalogGroupSummary
IBM_findCategoryByUniqueIds, IBM_findCategoryByIdentifier
IBM_findCatalogGroupDetails
IBM_findSubCategories
IBM_Global_WebContent
IBM_findWebContentsBySearchTerm
IBM_findAttachmentByContent
En desuso por IBM_findWebContentsBySearchTerm
IBM_findNavigationSuggestion_Brands
IBM_findNavigationSuggestion_Brands
IBM_findNavigationSuggestion_Categories
IBM_findNavigationSuggestion_Categories
IBM_Global
No hay ninguna coincidencia exacta para este perfil de búsqueda en el servidor de búsqueda de HCL Commerce Version 9. Tenga en cuenta los siguientes perfiles de búsqueda como sustituciones: IBM_findProductsByCategory
(para navegación)IBM_findProductsBySearchTerm
(para búsqueda de palabra clave)IBM_findProductByIds_Details
(para página de visualización de producto)
IBM_Global_Unstructured
No hay ninguna coincidencia exacta para este perfil de búsqueda en el servidor de búsqueda. Tenga en cuenta los siguientes perfiles de búsqueda como sustituciones: IBM_findWebContentsBySearchTerm
(para contenido web)IBM_findProductsByUnstructureOnly
(para buscar adjuntos de producto)
IBM_findNavigationSuggestions
No hay ninguna coincidencia exacta para este perfil de búsqueda en el servidor de búsqueda. Tenga en cuenta los siguientes perfiles de búsqueda como sustituciones: IBM_findNavigationSuggestion_Categories
(para sugerencias de categorías)IBM_findNavigationSuggestion_Brands
(para sugerencias de marcas)
- Correlacione los proveedores de expresiones de BOD para proveedores de expresiones de REST haciendo referencia a la tabla siguiente.
Proveedor de expresión de búsqueda basada en BOD Proveedor de expresión de búsqueda basada en REST Descripción: SolrSearchBasedMerchandisingExpressionProvider
SearchBasedMerchandisingExpressionProvider
Llama al componente de marketing para ejecutar las reglas de búsqueda. SolrSearchByCatalogExpressionProvider
SearchByCatalogExpressionProvider
Maneja la búsqueda por catálogo, teniendo en cuenta el catálogo de ventas en el contexto de negocio actual. SolrSearchByCategoryExpressionProvider
SearchByCategoryExpressionProvider
Maneja la búsqueda por categoría, teniendo en cuenta el catálogo de ventas en el contexto de negocio actual. SolrSearchByCustomExpressionProvider
SearchByCustomExpressionProvider
Incluye expresiones personalizadas que están almacenadas en _wcf.search.expr
.SolrSearchByFacetExpressionProvider
SearchByFacetExpressionProvider
Maneja la búsqueda por solicitudes de faceta. SolrSearchByKeywordExpressionProvider
SearchByKeywordExpressionProvider
Maneja la búsqueda por solicitudes de palabra clave. SolrSearchByKeywordRelevancyExpressionProvider
SearchByKeywordRelevancyExpressionProvider
Maneja la búsqueda por solicitudes de palabra clave que utilizan el analizador de consultas dismax. SolrSearchByManufacturerExpressionProvider
SearchByManufacturerExpressionProvider
Maneja la búsqueda por solicitudes de nombre de marca. SolrSearchByPriceExpressionProvider
SearchByPriceExpressionProvider
Maneja la búsqueda por solicitudes de rango de precios generadas desde la página Búsqueda avanzada. SolrSearchByPublishedEntryOnlyExpressionProvider
SearchByPublishedEntryOnlyExpressionProvider
Genera condiciones para restringir los resultados de búsqueda solamente a las entradas publicadas. SolrSearchByStorePathExpressionProvider
SearchByStorePathExpressionProvider
Genera condiciones para manejar la vía de acceso de tienda. SolrSearchCategoryEntitlementExpressionProvider
SearchCategoryEntitlementExpressionProvider
Realiza la autorización de categoría. SolrSearchFacetConditionExpressionProvider
SearchFacetConditionExpressionProvider
Genera una lista de facetas relacionadas con atributos y facetas de rango de precios específicos de moneda para la solicitud de búsqueda actual. SolrSearchInventoryExpressionProvider
SearchInventoryExpressionProvider
Maneja la búsqueda relacionada con el índice de inventario. SolrSearchProductEntitlementExpressionProvider
SearchProductEntitlementExpressionProvider
Realiza la autorización de producto. SolrSearchSequencingExpressionProvider
SearchProductSequencingExpressionProvider
Organiza las entradas de productos en el resultado de búsqueda por rango. SolrSearchTermAssociationExpressionProvider
SearchTermAssociationExpressionProvider
Obtiene sinónimos y sustituye el término de búsqueda para captar el resultado final. SolrSearchTypeExpressionProvider
SearchTypeExpressionProvider
Maneja el tipo de coincidencia para solicitudes de búsqueda por palabra clave, como Cualquiera y Excluir SKU. SolrSearchWebContentStoreInfoExpressionProvider
SearchWebContentStoreInfoExpressionProvider
Maneja la adición de condiciones para buscar contenido de sitio específico de tienda - Correlacione los posprocesadores de BOD para posprocesadores REST haciendo referencia a la tabla siguiente.
Preprocesador de búsqueda basada en BOD Preprocesador de búsqueda basada en REST SolrSearchResultGroupingQueryPreprocessor
SearchResultGroupingQueryPreprocessor
SolrSearchDebugQueryPreprocessor
SearchDebugQueryPreprocessor
SolrSearchEDismaxQueryPreProcessor
SearchEDismaxQueryPreProcessor
SolrSearchFacetQueryPreprocessor
SearchFacetQueryPreprocessor
SolrSearchHighlighterQueryPreprocessor
SearchHighlighterQueryPreprocessor
SolrSearchMainQueryPreprocessor
SearchMainQueryPreprocessor
SolrSearchPaginationQueryPreprocessor
SearchPaginationQueryPreprocessor
SolrSearchPreviewQueryPreprocessor
SearchPreviewQueryPreprocessor
SolrSearchResultFieldQueryPreprocessor
SearchResultFieldQueryPreprocessor
SolrSearchSortingQueryPreprocessor
SearchSortingQueryPreprocessor
SolrSearchSpellCorrectionQueryPreprocessor
SearchSpellCorrectionQueryPreprocessor
Nota: Los siguientes son posprocesadores nuevos:SearchCustomQueryPreprocessor
SearchJoinQueryPreprocessor
SearchManualSequenceOverrideQueryPreprocessor
SearchProductSequenceDebugInfoQueryPreprocessor
SearchRelevancyByProductGroupingQueryPreprocessor
SearchResponseFormatQueryPreprocessor
- Correlacione los posprocesadores y los filtros de resultados de búsqueda de BOD para posprocesadores y filtros de resultados de búsqueda de REST haciendo referencia a la tabla siguiente.
Filtro de resultados de búsqueda basados en BOD Posprocesador de búsqueda basada en REST SearchCatalogEntryMerchandisingAssocResultFilter
SearchCatalogEntryViewMerchandisingAssocQueryPostprocessor
SearchCatalogEntryViewAttachmentsResultFilter
SearchCatalogEntryViewAttachmentsQueryPostprocessor
SearchCatalogEntryViewAttributesAllowedValueResultFilter
SearchCatalogEntryViewAttributesQueryPostprocessor
SearchCatalogEntryViewAttributesResultFilter
SearchCatalogEntryViewAttributesQueryPostprocessor
SearchCatalogEntryViewDescriptionResultFilter
SearchCatalogEntryViewDescriptionQueryPostprocessor
SearchCatalogEntryViewPackageBundleResultFilter
SearchCatalogEntryViewComponentsQueryPostprocessor
SearchCatalogEntryViewPriceResultFilter
SearchCatalogEntryViewPriceQueryPostprocessor
SearchCatalogEntryViewSingleSKUResultFilter
La lógica que está en desuso mediante la indexación del campo childCatentry_id
.SearchCatalogEntryViewSKUResultFilter
SearchCatalogEntryViewSKUQueryPostprocessor
SearchCatalogEntryViewStoreDisplayAttributesResultFilter
SearchCatalogEntryViewAttributesQueryPostprocessor
SearchCatalogGroupEntitlementResultFilter
SearchCategoryEntitlementQueryPostprocessor
,SearchChildCategoryEntitlementQueryPostprocessor
SearchCatalogNavigationViewDynamicKitResultFilter
SearchCatalogEntryViewDynamicKitQueryPostprocessor
SearchCatalogNavigationViewPreviewResultFilter
SearchPreviewQueryPostprocessor
SearchCatalogNavigationViewSEOTitleMetaDataFilter
El servidor de búsqueda no devuelve metadatos SEO. Se devuelven metadatos del servidor de WebSphere Commerce. SearchNavigationSuggestionsResultFilter
SearchCategorySuggestionQueryPostprocessor
, SearchBrandSuggestionQueryPostprocessor - Vuelva a aplicar sus personalizaciones de Solr.
HCL Commerce Version 9utiliza Solr 5.5.4. Toda la personalización basada en las versiones anteriores de Solr debe implementarse en Solr 5.5.4.
- Migre los servicios de búsqueda personalizados.
- Migre la memoria caché de datos.
En HCL Commerce Version 9, la memoria caché de datos está habilitada en el servidor de búsqueda. Para obtener más información sobre la memoria caché de datos, consulte Habilitación del supervisor de memoria caché.
- Migre los trabajos planificados personalizados.En HCL Commerce Version 9, existe un planificador en el servidor de búsqueda. Puede utilizar la tabla siguiente para volver a crear los trabajos de búsqueda planificados.
- SRCH_SCHACTIVE
- SRCH_SCHBRDCST
- SRCH_SCHCONFIG
- SRCH_SCHERRLOG
- SRCH_SCHREPORT
- SRCH_SCHSTATUS