![HCL Commerce Enterprise](../../base/images/ngent.gif)
Habilitar el control de cambios para un nombre
Puede habilitar el control de cambios para un nombre registrando un mediador de control de cambios para el nombre. No se requiere codificación Java. Todo el control de cambios utiliza una implementación de mediador de control de cambios común que se proporciona de forma predeterminada. La capa de servicios de datos utiliza la información de registro y el mediador de control de cambios para validar si se puede modificar el objeto, y para crear bloqueos cuando se modifica el objeto.
Procedimiento
- Abra HCL Commerce Developer.
-
Cree un archivo de configuración de mediador de objetos de negocio, si aún no existe uno:
-
Los mediadores de un nombre se definen en el elemento
<_config:object>
del nombre. En las extensiones para configuraciones de mediador de objetos de negocio existentes, tendrá que copiar este elemento para poder añadir mediadores para el nombre. En muchas personalizaciones, este archivo (y el elemento<_config:object>
adecuado) ya se habrán generado automáticamente como parte de la ejecución del asistente de Capa de servicios de datos.Recuerde: No debe modificar nunca los archivos de configuración de mediador de objetos de negocio de HCL Commerce, puesto que se pueden sobrescribir cuando aplique actualizaciones a WebSphere Commerce. -
Cree un elemento
<_config:mediator>
con unclassName
de com.ibm.commerce.context.content.locking.ChangeControlBusinessObjectMediatorImpl y uninterfaceName
de com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ChangeControlBusinessObjectMediator.Por ejemplo:
<_config:mediator className="com.ibm.commerce.context.content.locking.ChangeControlBusinessObjectMediatorImpl" interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ChangeControlBusinessObjectMediator">
-
Cree un conjunto de elementos
<_config:mediator-property>
para el mediador del control de cambios que indique el contenedor de recursos y el ID del gestor utilizados para representar este nombre. Se suministran una explicación de los valores y un conjunto de ejemplo de elementos de configuración:- uniqueIDproperty
- La propiedad del nombre que resuelve el identificador. Establezca este valor en StoreIdentifier/UniqueID. Se trata del valor que se encuentra en la columna BOKEY1 de la tabla CMMETADATA.
- resourceManagerId y resourceContainerId
- Los contenedores y gestores de recursos se definen cuando se realizan los pasos indicados en Habilitar el soporte de espacios de trabajo para una tabla personalizada en un módulo de servicio BOD de HCL Commerce existente. El ID del contenedor de recursos y el ID del gestor de recursos deben ser un contenedor de recursos o un gestor de recursos definido para el módulo de servicios, que se encuentra en uno de los archivos siguientes:
workspace_dir\wc\xml\content-management\ servicemodulename.resource-managers.xml
- workspace_dir\WC\xml\content-management\servicemodulename.resource-managers.xml
workspace_dir\wc\xml\content-management\servicemodulename.resource-managers-ext.xml
- workspace_dir\WC\xml\content-management\servicemodulename.resource-managers-ext.xml
El ejemplo siguiente muestra un nombre registrado con un valor de 10001 para el valor de contenedor de recursos y 1 para el valor de gestor de gestor de recursos.
<_config:mediator className="com.ibm.commerce.context.content.locking.ChangeControlBusinessObjectMediatorImpl" interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ChangeControlBusinessObjectMediator"> <_config:mediator-properties> <_config:mediator-property name="uniqueIDProperty" value="StoreIdentifier/UniqueID"/> <_config:mediator-property name="resourceManagerId" value="1"/> <_config:mediator-property name="resourceContainerId" value="10001"/> </_config:mediator-properties> </_config:mediator>
Ejemplo
<_config:BusinessObjectMediatorConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/xmlns/prod/commerce/foundation/config ../xsd/wc-business-object-mediator.xsd" xmlns:_config="http://www.ibm.com/xmlns/prod/commerce/foundation/config">
<_config:object logicalType="com.mycompany.commerce.tutorialstore.facade.datatypes.TutorialStoreType"
physicalType="com.mycompany.commerce.tutorialstore.facade.server.entity.datatypes.Storeent">
<_config:mediator interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ReadBusinessObjectMediator"
className="com.mycompany.commerce.tutorialstore.facade.server.services.dataaccess.bom.mediator.ReadTutorialStoreMediator">
<_config:part-mediator interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ReadBusinessObjectPartMediator">
<_config:part-mediator-implementation className="com.mycompany.commerce.tutorialstore.facade.server.services.dataaccess.bom.mediator.ReadTutorialStoreDescriptionMediator"/>
<_config:part-mediator-implementation className="com.mycompany.commerce.tutorialstore.facade.server.services.dataaccess.bom.mediator.ReadTutorialStoreSupportedLanguagesMediator"/>
<_config:part-mediator-implementation className="com.mycompany.commerce.tutorialstore.facade.server.services.dataaccess.bom.mediator.ReadTutorialStoreSupportedCurrenciesMediator"/>
</_config:part-mediator>
</_config:mediator>
<_config:mediator interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ChangeBusinessObjectMediator"
className="com.mycompany.commerce.tutorialstore.facade.server.services.dataaccess.bom.mediator.ChangeTutorialStoreMediator">
<_config:part-mediator interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ChangeBusinessObjectPartMediator">
<_config:part-mediator-implementation className="com.mycompany.commerce.tutorialstore.facade.server.services.dataaccess.bom.mediator.ChangeTutorialStoreDescriptionMediator"/>
<_config:part-mediator-implementation className="com.mycompany.commerce.tutorialstore.facade.server.services.dataaccess.bom.mediator.ChangeTutorialStoreBasePartMediator"/>
</_config:part-mediator>
</_config:mediator>
<_config:mediator className="com.ibm.commerce.context.content.locking.ChangeControlBusinessObjectMediatorImpl"
interfaceName="com.ibm.commerce.foundation.server.services.dataaccess.bom.mediator.ChangeControlBusinessObjectMediator">
<_config:mediator-properties>
<_config:mediator-property name="uniqueIDProperty" value="StoreIdentifier/UniqueID"/>
<_config:mediator-property name="resourceManagerId" value="1"/>
<_config:mediator-property name="resourceContainerId" value="10001"/>
</_config:mediator-properties>
</_config:mediator>
</_config:object>
</_config:BusinessObjectMediatorConfiguration>