Elemento TemplateDocument de un archivo de definición de plantilla
Para cada mensaje XML de entrada, debe haber al menos un documento de plantilla definido en el mensaje. Esto se define en el elemento TemplateDocument.
El elemento TemplateDocument tiene cuatro subelementos:
- DocumentType (con un atributo de versión opcional)
- Esta parte especifica el nombre del documento XML, o nombre del elemento raíz, y el atributo de "versión" del elemento raíz, si existe. El siguiente es un ejemplo del elemento DocumentType:
<DocumentType version='1.0'>Reset_Password</DocumentType>
- StartElement
- Esta parte especifica el elemento desde el cual el correlacionador de mensajes XML inicia la correlación de códigos. Debe corresponderse con un elemento del DTD del mensaje. La correlación de códigos genera las parejas de nombre/valor que se utilizan como parámetros de los mandatos. El siguiente es un ejemplo de utilización de StartElement:
En este ejemplo, debe haber un elemento llamado PasswordInfo definido en el archivo DTD de este mensaje. Por ejemplo, el archivo DTD debe contener una línea similar a la siguiente que defina un elemento PasswordInfo:<StartElement>PasswordInfo</StartElement>
<!ELEMENT PasswordInfo (Password, ConfirmPassword)>
- TemplateTagName
- Esta parte especifica qué correlación de códigos se ha de utilizar para el mensaje. La correlación de códigos se define en otro lugar del archivo de definición de plantilla bajo el elemento TemplateTag. Esto significa que el valor del elemento TemplateTagName debe coincidir con el atributo name de un elemento TemplateTag que aparece en algún lugar del archivo de definición de plantilla. Consulte la sección sobre el elemento TemplateTag para obtener más detalles. El ejemplo siguiente ilustra la utilización del elemento TemplateTagName:
- CommandMapping
- Este elemento determina a qué mandatos invoca el mensaje. El elemento contiene un subelemento llamado Command. El elemento Command se utiliza para indicar el mandato de controlador de HCL Commerce que se ejecuta cuando el mensaje se correlaciona satisfactoriamente. Contiene un atributo obligatorio llamado CommandName, que se utiliza para indicar el nombre del mandato. El valor de este atributo debe corresponderse con un mandato existente que esté registrado en los archivos de configuración Struts. Por ejemplo, puede asociar un mensaje con el mandato que restaura una contraseña utilizando la sintaxis siguiente:
Para más información, consulte Personalización de la configuración de aplicaciones web basada en Struts de HCL Commerce.<CommandMapping> <Command CommandName='ResetPassword'/> </CommandMapping>
También puede asociar varios mandatos con el mismo mensaje. Para hacerlo, deberá utilizar los siguientes atributos adicionales del elemento Command:
- Atributo de condición: La sintaxis para la condición es la siguiente ( [] significa que es opcional, * significa que puede repetirse):
fieldNamefieldName [="fieldValue "] [AND fieldName [="fieldValue "]]*
- fieldName="fieldValue "
- Un valor del mensaje XML se establece en el del campo fieldName. Cuando se correlaciona el mensaje, si el valor es el mismo que el de fieldValue, el valor de condition es true.
- fieldName1="fieldValue1" AND fieldName1="fieldValue2"
- Los valores del mensaje XML se establecen en los campos fieldName1 y fieldName2 cuando se analiza el mensaje. Si los valores son iguales a los de fieldValue1 y fieldValue2 respectivamente, entonces el valor de condition es true.
- Atributo de condición: La sintaxis para la condición es la siguiente ( [] significa que es opcional, * significa que puede repetirse):
- Atributo TemplateTagName
- Si especifica el atributo TemplateTagName para este elemento Command, cuando el valor de condition es true, se utilizará una nueva plantilla de códigos con el nombre que hay definido en TemplateTagName para el resto del mensaje XML de entrada.