Archivo de configuración del servidor de tienda (wc-store.xml)

El archivo de configuración de Store server principal es wc-store.xml, que se encuentra en el directorio crs.ear/xml/config/. Amplíe esta configuración para modificar el comportamiento predeterminado del Store server. Para ampliar este archivo, ponga una copia del mismo dentro del directorio crs-web.war/WEB-INF/xml/config/ y cambie su nombre de archivo para utilizarlo para el convenio de denominación de archivos -ext.
Los siguientes ejemplos de código son las secciones de ejemplo predeterminadas del archivo wc-store.xml. Solo se describen las secciones personalizables. Cada ejemplo incluye detalles sobre la sección y proporciona contexto para cómo actualizarlos.
<WebModule>
	<Module contextPath="/webapp/remote/stores"
		name="Stores"
		urlMappingPath="/servlet" webAlias="/wcsstore"> 
                    <InitParameters SSLPort = "8443" NonSSLPort="8080"/>
			<URLRedirectFilter enable="false"/>
			<WhiteListProtection enable="true"/>
	</Module>
	<Module contextPath="/webapp/remote/ibmstores"
		name="IBMStores"
		urlMappingPath="/servlet" webAlias="/ibmstorealias">
			<URLRedirectFilter enable="false"/>
			<WhiteListProtection enable="true"/>
	</Module>
	<Module contextPath="/webapp/remote/preview"
		name="Preview" 
		urlMappingPath="/servlet" webAlias="/webapp/remote/preview"/>
</WebModule>
La sección WebModule define la correlación entre la vía de acceso de contexto del sistema de archivos y la vía de acceso web de WebSphere Application Server para el Store server. Cada definición incluye el filtro de redirección de URLy los valores de protección contra la vulnerabilidad Cross Site Scripting. Para obtener más información sobre el filtro de redirección de URL y la protección contra la vulnerabilidad Cross Site Scripting, consulte la siguiente documentación de HCL Commerce Version 9:
<Instance
  DefaultLang="-1"
  StoreWebModuleName="Stores"
  enableHystrix="true" 
  enableDialogMarketing="false"
  EnableDoubleClickHandler="true"/>
La sección Instance del archivo de configuración de Store server define funciones específicas que se aplican a la instancia de Store server del WebSphere Application Server.
  • enableDialogMarketing es la única opción de configuración personalizable que es exclusiva de HCL Commerce on Cloud. Esta característica se inhabilita de forma predeterminada. Cuando está habilitada, los sucesos de marketing se desencadenan a través del canal web. Esta característica permite al sistema de marketing en el Transaction server evaluar el comportamiento del usuario basándose en reglas de marketing.
  • Para más información sobre el manejo de la doble pulsación, consulte Double-click handling en la documentación de HCL Commerce Version 9.
<WhiteListProtection enabled="true" name="WhiteListProtection" display="false">
	<param name="storeId" regex="[-]?[0-9]*"/>
	<param name="langId" regex="[-]?[0-9]*"/>
	<param name="catalogId" regex="[-]?[0-9]*"/>
	...
</WhiteListProtection>

La sección WhiteListProtection define los valores aceptables para los parámetros que se pasan al Store server a través de URL.

Para obtener más información sobre la validación de datos de lista blanca, consulte Enabling WhiteList data validation en la documentación de HCL Commerce Version 9.

<XSiteScriptingProtection display="false" enabled="true" name="Cross Site Scripting Protection">
		<ProhibitedAttrs display="false">
			<Attribute display="false" regex=".*((%(25)+)|%)*((3C)|&lt;)[\s]*+script.*"/>
		</ProhibitedAttrs>
		<ProhibitedChars display="false">
			<Character display="false" name="&lt;SCRIPT"/>
			<Character display="false" name="&lt;%"/>
			<Character display="false" name="&amp;lt;%"/>
			...
		</ProhibitedChars>
		<ProhibCharEncoding display="false"/>
</XSiteScriptingProtection>

La sección de protección contra la vulnerabilidad Cross Site Scripting define el filtro basado en reglas de Store server global que rechaza solicitudes del usuario que no se ajustan a ella. El filtro se aplica a cada módulo web que tenga el código WhiteListProtection enable establecido en true.

Para más información sobre la protección contra la vulnerabilidad Cross Site Scripting, consulte Double-click handling en la documentación de HCL Commerce Version 9.

<Components>
	<component
		compClassName="com.ibm.commerce.component.datatype.UrlMapperConfig"
		enable="true" name="UrlMapperConfig">
		<property UrlMapperFile="mapper/SEOUrlMapper.xml" display="false"/>
	</component>
	<component
		compClassName="com.ibm.commerce.dynacache.filter.StoreCacheFilterAttributeMapHelper"
		enable="true" name="DynaCacheFilterMappings">
			<property display="false" refreshInterval="300000">
				<map
					className="com.ibm.commerce.store.context.CommandContext"
					display="false" dynacacheAttributeName="DC_storeId"
					methodName="getStoreId" name="getStoreId"/>
				<map
					className="com.ibm.commerce.store.context.CommandContext"
					display="false" dynacacheAttributeName="DC_userId"
					methodName="getCallerId" name="getCallerId"/>
				<map
					className="com.ibm.commerce.store.context.CommandContext"
					display="false" dynacacheAttributeName="DC_lang"
					methodName="getLanguageId" name="getLanguageId"/>
				...
			</property>
	</component>
	<component
		compClassName="com.ibm.commerce.dynacache.filter.StoreEdgeCacheCookieHelper"
		enable="false" name="DynaCacheCookie">
			<property CookieDomain="" CookiePath="/"
				MutipleStores="true" Timeout="3600" display="false">
				<ec name="currencyId" value="true"/>
				<ec name="languageId" value="true"/>
				<ec name="parentOrg" value="true"/>
				...
			</property>
	</component>
</Components>

La sección de componentes define los valores DynaCache de WebSphere Application Server para el Store server. No se da soporte a las clases de componentes personalizados. No obstante, los componentes existentes pueden modificarse.

  • Para obtener información sobre el almacenamiento en memoria caché de Edge, consulte Edge caching.
  • Para obtener información sobre la creación de atributos de solicitudes personalizados para el almacenamiento en memoria caché de servlets, consulte Custom request attributes for servlet caching en la documentación de HCL Commerce Version 9.
<NonEncryptedParameters display="false">
	<Parameter name="storeId"/>
	<Parameter name="langId"/>
	<Parameter name="catalogId"/>
	...
</NonEncryptedParameters>

La sección NonEncryptedParameters define los parámetros de URL que se han dejado descifrados para fines de almacenamiento en memoria caché. Para más información sobre cómo permitir acceso a los parámetros, consulte Allowing access to encrypted parameters en la documentación de HCL Commerce Version 9.

<SEOConfiguration defaultUrl="" dynamicUrl="true" enable="true">
	<mapper-class-name value="com.ibm.commerce.component.seo.SEOURLMapperImpl"/>
</SEOConfiguration>

La sección SEOConfiguration define los valores de configuración de SEO para el Store server. No se da soporte a una clase de correlacionador personalizado.

Para más información sobre cómo se construyen los enlaces a recursos universales (URL) de la tienda, consulte Tag: url en la documentación de HCL Commerce Version 9.

<DoubleClickMonitoredCommands display="false">
	<excludeCommands>
		<command name="StoreCatalogDisplay"/>
		<command name="TopCategoriesDisplay"/>
		<command name="CategoryDisplay"/>
		...
	</excludeCommands>
</DoubleClickMonitoredCommands>

La sección DoubleClickMonitoredCommands define qué solicitudes de URL están sujetas o no sujetas al manejo de la doble pulsación. Para obtener más información sobre la configuración del manejo de doble pulsación, consulte Configuring double-click handling en la documentación de HCL Commerce Version 9.

<SessionManagement>
<cookie httponly="true",
secure="true" />
</SessionManagement>

La sección SessionManagement explica cómo se gestionan las sesiones de usuario. Las cookies de sesión se establecen como seguras por defecto. Si no se especifica el atributo de seguridad, se asume el valor por defecto de true.