Fichier de configuration du serveur de magasin (wc-store.xml)

Le fichier de configuration principal du Store server est wc-store.xml, situé dans le répertoire crs.ear/xml/config/. Étendez cette configuration pour modifier le comportement par défaut du Store server. Pour étendre ce fichier, placez-en une copie dans le répertoire crs-web.war/WEB-INF/xml/config/ et modifiez son nom pour utiliser la convention de dénomination des fichiers -ext.
Les exemples de code suivants sont des exemples de sections par défaut du fichier wc-store.xml. Seules les sections personnalisables sont décrites. Chaque exemple inclut des détails sur la section et fournit un contexte pour la mise à jour.
<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 section WebModule définit le mappage entre le chemin de contexte du système de fichiers et le chemin Web WebSphere Application Server pour le Store server. Chaque définition inclut les paramètres de protection du filtrage de redirection d'URL et des scripts intersite. Pour plus d'informations sur la protection du filtrage de redirection d'URL et des scripts intersite, consultez la documentation HCL Commerce Version 9 suivante :
<Instance
  DefaultLang="-1"
  StoreWebModuleName="Stores"
  enableHystrix="true" 
  enableDialogMarketing="false"
  EnableDoubleClickHandler="true"/>
La section Instance du fichier de configuration du Store server définit les fonctions qui sont appliquées à l'instance du Store server WebSphere Application Server.
  • enableDialogMarketing est la seule option de configuration personnalisable unique pour HCL Commerce on Cloud. Cette fonction est désactivée par défaut. Lorsqu'elle est activée, les événements marketing sont déclenchés via le canal Web. Cette fonctionnalité active le système de marketing sur le Transaction server pour évaluer le comportement de l'utilisateur en fonction des règles de marketing.
  • Pour plus d'informations sur la gestion du double-clic, voir Double-click handling dans la documentation 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 section WhiteListProtection définit les valeurs acceptables pour les paramètres transmis au Store server via des URL.

Pour plus d'informations sur la validation des données de la liste blanche, voir Enabling WhiteList data validation dans la documentation 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 section de protection des scripts intersite définit le filtre global basé sur des règles du Store server qui rejette les demandes d'utilisateur qui ne s'y conforment pas. Le filtre est appliqué à chaque module Web dont l'indicateur WhiteListProtection enable est défini sur true.

Pour plus d'informations sur la protection des script intersite, voir Double-click handling dans la documentation 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 section des composants définit les paramètres WebSphere Application Server DynaCache pour le Store server. Les classes de composants personnalisées ne sont pas prises en charge. Cependant, les composants existants peuvent être modifiés.

  • Pour plus d'informations sur la mise en cache aux frontières, voir Edge caching.
  • Pour plus d'informations sur la création d'attributs de requête personnalisés pour la mise en cache de servlet, voir Custom request attributes for servlet caching dans la documentation HCL Commerce Version 9.
<NonEncryptedParameters display="false">
	<Parameter name="storeId"/>
	<Parameter name="langId"/>
	<Parameter name="catalogId"/>
	...
</NonEncryptedParameters>

La section NonEncryptedParameters définit les paramètres d'URL restants déchiffrés à des fins de mise en cache. Pour plus d'informations sur l'autorisation d'accès aux paramètres, voir Allowing access to encrypted parameters dans la documentation HCL Commerce Version 9.

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

La section SEOConfiguration définit les paramètres de configuration du référencement du Store server. Une classe de mappeur personnalisée n'est pas prise en charge.

Pour plus d'informations sur la façon dont les adresses URL sont créées, voir Tag: url dans la documentation HCL Commerce Version 9.

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

La section DoubleClickMonitoredCommands définit les requêtes d'URL soumises ou non à la gestion du double-clic. Pour plus d'informations sur la configuration de la gestion du double-clic, voir Configuring double-click handling dans la documentation HCL Commerce Version 9.

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

La section SessionManagement définit la façon dont les sessions utilisateur sont gérées. Par défaut, tous les cookies de session sont sécurisés. Si vous n'indiquez aucun attribut sécurisé, la valeur par défaut de true est présumée.