Cambio de propiedades en el archivo de configuración de HCL Commerce Search (wc-search.xml)

Para cambiar el valor de una propiedad existente en un archivo de configuración de componente HCL Commerce Search (wc-search.xml), debe crear una versión personalizada del archivo en una nueva carpeta. La versión personalizada del archivo debe contener únicamente las propiedades modificadas.

Antes de empezar

Para conocer las propiedades que este archivo contiene, consulte el tema HCL Commerce Search archivo de configuración (wc-search.xml).

Por qué y cuándo se efectúa esta tarea

En el archivo wc-search.xml personalizado, cambie el tipo de nodo <_config:profile>.
Nota: Para añadir o eliminar una configuración dentro de un perfil de búsqueda existente, añada un nuevo perfil al archivo wc-search.xml personalizado que amplíe el perfil existente que desea modificar.

Se puede utilizar el procedimiento siguiente para cambiar (en lugar de añadir o eliminar) un valor de una propiedad existente dentro de un perfil de búsqueda, que se define en el archivo wc-search.xml.

Procedimiento

  1. Abra HCL Commerce Developer y cambie a la vista Explorador de empresa.
  2. Cree un archivo de configuración de HCL Commerce Search personalizado (wc-search.xml), si no existe ninguno:
    1. Vaya a la vía de acceso siguiente: workspace_dir\search-config-ext\src\runtime\config
    2. En el directorio config, vaya al directorio com.ibm.commerce.search. Si este directorio contiene una versión personalizada del archivo wc-search.xml, abra el archivo y vaya al paso 4.
    3. Cree un archivo wc-search.xml vacío en el directorio com.ibm.commerce.search. Este archivo es el archivo wc-search.xml personalizado.
  3. Añada los elementos XML básicos al archivo wc-search.xml personalizado:
    1. Abra el archivo wc-search.xml vacío personalizado en un editor XML.
    2. Copie el siguiente código en el archivo:
      <?xml version="1.0" encoding="UTF-8"?>
      
      <_config:search-config
      	xmlns:_config="http://www.ibm.com/xmlns/prod/commerce/foundation/config"
      	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      	xsi:schemaLocation="http://www.ibm.com/xmlns/prod/commerce/foundation/config ../xsd/wc-search.xsd ">
      
      	<_config:server name="BasicConfiguration">
      		<_config:embedded />
      	</_config:server>
      
      </_config:search-config>
  4. Edite el archivo de configuración de búsqueda.
    1. Edite el archivo de configuración de HCL Commerce Search Search_home\resources\search\runtime\config\com.ibm.commerce.search\wc-search.xml.

      No cambie nunca las propiedades directamente en este archivo porque los cambios se sobrescribirán con futuras actualizaciones de software de IBM.

    2. Copie los elementos XML para las propiedades que desea cambiar del archivo de configuración de búsqueda de HCL Commerce a su archivo de wc-search.xml personalizado. Inserte los elementos XML copiados antes del elemento </_config:search-config>.

      Aunque esté copiando únicamente determinados elementos, debe mantener la jerarquía XML para aquellos elementos del archivo. Por ejemplo, si cambia la propiedad definida en un elemento <_config:param> específico, conserve los elementos padre y predecesor del elemento <_config:param>, pero elimine todos los iguales. También debe mantener el orden de los hermanos, ya que se espera que estén en el mismo orden en que aparecen en el archivo de configuración predeterminado. Para obtener un ejemplo, consulte Ejemplo 1: Cambiar propiedades en el archivo personalizado wc-search.xml.

    3. Cambie los valores de las propiedades copiadas.
    4. Antes del elemento </_config:search-config>, añada una lista de los perfiles que se heredan directa o indirectamente del perfil para el que ha cambiado los valores de propiedad.

      Los perfiles de búsqueda tienen una estructura jerárquica. El archivo wc-search.xml predeterminado contiene un número de perfiles que heredan elementos directa e indirectamente de otros perfiles. Por ejemplo, el perfil IBM_Global contiene un número de perfiles hereditarios. Para asegurarse de que los valores que cambie son recogidos por los perfiles ampliados, debe incluir una lista de estos perfiles en el archivo wc_search.xml personalizado. Al incluir esta lista, los valores de propiedad que cambie se fusionarán correctamente entre los dos archivos. Para obtener un ejemplo, consulte Ejemplo 1: Cambiar propiedades en el archivo personalizado wc-search.xml.

  5. Guarde y cierre el archivo wc-search.xml personalizado.
  6. Pruebe los cambios de configuración.

Ejemplo 1: Cambiar propiedades en el archivo personalizado wc-search.xml

El ejemplo siguiente muestra el contenido de un archivo wc-search.xml personalizado que cambia tres propiedades que están definidas dentro del perfil IBM_Global:

<?xml version="1.0" encoding="UTF-8"?>
<_config:search-config
	xmlns:_config="http://www.ibm.com/xmlns/prod/commerce/foundation/config"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/xmlns/prod/commerce/foundation/config ../xsd/wc-search.xsd ">

	<_config:server name="BasicConfiguration">
		<_config:embedded />
	</_config:server>

A
    <_config:profile name="IBM_findWebContentsBySearchTerm" indexName="UnstructuredContent"> 
       <_config:query> 
              <_config:param name="maxRows" value="50"/> 
       </_config:query> 
       <_config:spellcheck> 
              <_config:param name="limit" value="3"/> 
       </_config:spellcheck>
    </_config:profile>
B
</_config:search-config>
En el ejemplo anterior, el fragmento de código que empieza por A y finaliza por B es el código insertado que cambia tres propiedades:
  • maxRows: El valor de la propiedad se cambia de 100 a 50.
  • limit: El valor de la propiedad se cambia de 5 a 3.
Tenga en cuenta que los elementos padre y predecesor de cada elemento <_config:param> se mantienen en el archivo wc-search.xml personalizado.

Puede definir un nuevo perfil de búsqueda personalizado para satisfacer las necesidades de negocio. El perfil de búsqueda personalizado se pueden modelar a partir de un perfil existente y puede incluir las implementaciones predeterminadas y personalizadas. Se produce un escenario común donde puede definir perfiles personalizados cuando ninguno de los perfiles predeterminados satisface las necesidades de negocio. O bien, si desea que se ejecute determinada lógica antes de que otra lógica. Por ejemplo, definiendo un proveedor personalizado nuevo que debe ejecutarse antes de cualquiera de los proveedores o procesadores predeterminados.

El nuevo perfil de búsqueda debe cumplir con la definición de esquema de XML del archivo wc-search.xml. La ventaja de definir un nuevo perfil es que tiene un control completo sobre la forma en que está diseñado el perfil. Sin embargo, si el perfil está destinado a que lo utilice un método de recursos REST externo, debe correlacionarlo con un método de recursos REST en el archivo wc-rest-resourceconfig.xml.

Antes de crear un perfil de búsqueda personalizado, revise las órdenes de configuración de archivos de definición de esquema XML de wc-search.xml y los elementos hijo admitidos. Revise los perfiles de búsqueda de WebSphere Commerce e identifique el servicio REST para establecer una correlación con el perfil de búsqueda personalizado. Utilice el perfil de búsqueda predeterminado como referencia cuando diseñe el nuevo perfil de búsqueda:
  1. En el archivo wc-search.xml ampliado, defina los elementos de apertura y cierre config:profile, con los atributos name e indexName obligatorios. Por ejemplo:
    <_config:profile name="X_findProductsBySearchTerm" indexName="CatalogEntry">
    </_config:profile
  2. Añada las diferentes configuraciones necesarias, como query, facet y result. Por ejemplo:
    <_config:profile name="X_findProductsBySearchTerm" indexName="CatalogEntry">
    <_config:query>
    List of all parameters, providers, fields, preprocessors, and post processors in their expected order
    </_config:query>
    <_config:result>
    List all of the result fields
    </_config:result>
    </_config:profile>
  3. Registre el perfil de búsqueda personalizada nuevo en el archivo workspace_dir\search-config-ext\src\runtime\config\com.ibm.commerce.rest\wc-rest-resourceconfig.xml.