Changing properties in the component configuration file (wc-component.xml) (Search EAR)

To change any properties in the configuration file (wc-component.xml), you must create a customized version of the file in a new folder. The customized version of the file must contain only the changed properties.

Before you begin

To understand the search-related properties that this file contains, see Search properties in the component configuration file (wc-component.xml) (Search EAR).

Procedure

  1. Open WebSphere Commerce Developer and switch to the Enterprise Explorer view.
  2. Create a custom component configuration file (wc-component.xml), if one does not exist:
    1. Go to the following directory:

      WCDE_installdir\workspace\Search\xml\config\

    2. In the config folder, create a new com.ibm.commerce.component_name-ext folder so the path looks like this:

      WCDE_installdir\workspace\Search\xml\config\com.ibm.commerce.component_name-ext\

      If this folder exists and it contains a customized version of the wc-component.xml file, then open the file and skip to step 4.

    3. Create an empty wc-component.xml file in the com.ibm.commerce.component_name-ext folder. This file is your custom wc-component.xml file.
  3. Add the basic XML elements that are required for your custom wc-component.xml file:
    1. Open your empty custom wc-component.xml file in an XML editor.
    2. Copy the following code into the file:
      <?xml version="1.0" encoding="UTF-8"?>
      <_config:DevelopmentComponentConfiguration
      	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      	xsi:schemaLocation="http://www.ibm.com/xmlns/prod/commerce/foundation/config ../xsd/wc-component.xsd "
      	xmlns:_config="http://www.ibm.com/xmlns/prod/commerce/foundation/config">
      
          <_config:extendedconfiguration>
      
      	
          </_config:extendedconfiguration>
      	
      </_config:DevelopmentComponentConfiguration>
  4. Add the XML for any properties that you want to change to your custom wc-component.xml file:
    1. Go to the default component configuration file:

      WCDE_installdir\workspace\Search\xml\config\com.ibm.commerce.component_name-fep\wc-component.xml

      Never change properties directly in this file because your changes will be overwritten with future IBM software updates.

    2. Copy the XML elements for the properties you want to change from the default component configuration file to your custom wc-component.xml file. Insert the copied XML elements after the <_config:extendedconfiguration> element.

      Even though you are copying only certain elements, you must maintain the XML hierarchy for those elements in the file. For example, if you want to change the property that is defined in a specific <_config:property> element, you must retain the parent and ancestor elements of the <_config:property> element, but you can delete all the siblings if you are not changing them. You must also maintain the ordering of the siblings, as they are expected in the same order that they appear in the default configuration file. See the example at the end of this topic.

    3. Change the values for the copied properties as required.
  5. Save and close the custom configuration file.
  6. Test your configuration changes.
  7. Deploy the customized file to the production environment.

Example 1: Custom catalog component configuration file that changes search configuration properties

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

A
      <_config:configgrouping name = "SearchConfiguration">
            <_config:property name = "SearchProfilesStatistics" value = "true"/>
            <_config:property name = "SearchStatisticsUpdateInterval" value = "4800"/>
            <_config:property name = "SearchStatisticsResultPagesTrackingThreshold" value = "2"/>
            <_config:property name = "relevancyType" value="1"/>
      </_config:configgrouping>
B
</_config:extendedconfiguration>
</_config:DevelopmentComponentConfiguration>
In the previous example, the code snippet that starts with A and ends with B is the inserted code, which contains the following properties:
SearchProfilesStatistics
The value is changed to true to enable site search statistics.
SearchStatisticsUpdateInterval
The value is changed to 4800 seconds as the time interval between batch processing updates.
SearchStatisticsResultPagesTrackingThreshold
The value is changed to 2 search results pages to track search rule statistics.
relevancyType
The property relevancyType is set to 1 to enable the category search relevancy feature.