Ejecutar el ejemplo JavaComputeTransform

Después de haber importado e instalado parcialmente este ejemplo y de realizado las restantes instrucciones de instalación, podrá ejecutar este ejemplo siguiendo las instrucciones que aparecen en el apartado Ejecutar el ejemplo de abajo.

Este apartado también incluye un ejemplo de mensaje de entrada de prueba y un mensaje de salida correspondiente para que pueda confirmar que el ejemplo ha funcionado.

Mensaje de prueba de entrada

Todos los mensajes de prueba usados para la ejecución de este ejemplo se basan en el siguiente formato:

<SaleEnvelope>
<Header>
<SaleListCount>1</SaleListCount>
</Header>
<SaleList>
<Invoice>
<Initial>K</Initial>
<Initial>A</Initial>
<Surname>Braithwaite</Surname>
<Item>
<Code>00</Code>
<Code>01</Code>
<Code>02</Code>
<Description>Twister</Description>
<Category>Games</Category>
<Price>00.30</Price>
<Quantity>01</Quantity>
</Item>
<Item>
<Code>02</Code>
<Code>03</Code>
<Code>01</Code>
<Description>The Times Newspaper</Description>
<Category>Books and Media</Category>
<Price>00.20</Price>
<Quantity>01</Quantity>
</Item>
<Balance>00.50</Balance>
<Currency>Sterling</Currency>
</Invoice>
<Invoice>
<Initial>T</Initial>
<Initial>J</Initial>
<Surname>Dunnwin</Surname>
<Item>
<Code>04</Code>
<Code>05</Code>
<Code>01</Code>
<Description>The Origin of Species</Description>
<Category>Books and Media</Category>
<Price>22.34</Price>
<Quantity>02</Quantity>
</Item>
<Item>
<Code>06</Code>
<Code>07</Code>
<Code>01</Code>
<Description>Microscope</Description>
<Category>Miscellaneous</Category>
<Price>36.20</Price>
<Quantity>01</Quantity>
</Item>
<Balance>81.84</Balance>
<Currency>Euros</Currency>
</Invoice>
</SaleList>
<Trailer>
<CompletionTime>12.00.00</CompletionTime>
</Trailer>
</SaleEnvelope>

Ejecutar el ejemplo

Se proporcionan dos nodos JavaCompute, uno que utiliza expresiones XPath (JavaComputeTransformXPath) y otro que utiliza la API del nodo Plugin de Java (JavaComputeTransformNoXPath). Esto es así para permitir la comparación entre dos métodos distintos que tienen un mismo resultado.

Las siguientes instrucciones cubren el nodo JavaComputeTransformXPath - para el nodo JavaComputeTransformNoXPath, siga las instrucciones exactamente del mismo modo, pero cambie XPath por NoXPath cuando sea necesario.

Este ejemplo usa el flujo de mensajes JavaComputeTransformXPathFlow. Contiene una cola llamada JAVACOMPUTE.TRANSFORMXPATH.IN y el flujo de mensajes puede transformar y direccionar el mensaje a una de dos colas de salida (JAVACOMPUTE.TRANSFORMXPATH.OUT y  JAVACOMPUTE.TRANSFORMXPATH.FAILURE).

Para ejecutar el ejemplo:

  1. Vaya a la perspectiva Desarrollo de aplicación de intermediario (Broker Application Development) en el Kit de herramientas de IBM WebSphere Message Broker.
  2. Abra el archivo de colocación en cola del mensaje de prueba, JavaComputeTransformXPathMessage.
  3. Pulse en Grabar en cola. Se enviará un mensaje a la cola JAVACOMPUTE.TRANSFORMXPATH.IN. El flujo de mensajes transforma el mensaje utilizando el nodo JavaComputeTransformXPath y lo direccionará a la cola JAVACOMPUTE.TRANSFORMXPATH.OUT.
  4. Para comprobar si el mensaje ha llegado a la cola correcta, utilice WebSphere MQ Explorer.
    1. Inicie WbSphere MQ Explorer.
    2. Abra las carpetas que hay bajo el gestor de colas WBRK6_DEFAULT_QUEUE_MANAGER y seleccione Colas.
    3. Cuando renueve WebSphere MQ Explorer asegúrese de que está seleccionada la carpeta Colas y no un nombre de cola real. Si selecciona un nombre de cola, no todas las colas visualizadas se renovarán.
  5. Renueve la visualización de la cola para que muestre el número actual de mensajes que hay en cada cola. Debe aparecer un mensaje en la cola JAVACOMPUTE.TRANSFORMXPATH.OUT.
  6. Para ver este mensaje de salida, vuelva al Kit de herramientas de IBM WebSphere Message Broker y pulse en Obtener un mensaje de una cola en la barra de herramientas.
  7. Escriba el nombre de gestor de colas WBRK6_DEFAULT_QUEUE_MANAGER, y el nombre de cola JAVACOMPUTE.TRANSFORMXPATH.OUT.
  8. Pulse en Leer de cola para visualizar el contenido del mensaje de salida.
  9. Compárelo con el mensaje de salida esperado.

Si todos los pasos anteriores han funcionado correctamente, el ejemplo ha terminado. Vea el código de Java en el flujo de mensajes JavaComputeTransformXPathFlow para ver cómo se ha llevado a cabo la transformación del mensaje.

Mensaje de salida esperado (JavaComputeTransformNoXPath)

Si utiliza el flujo de mensajes JavaComputeTransformNoXPathFlow, el mensaje de salida se formatea como en el siguiente ejemplo:

<Parent>
<Statement Type="Monthly">
<Customer>
<Initials>KA</Initials>
<Name>Braithwaite</Name>
<Balance>00.50</Balance>
</Customer>
<Purchases>
<Article>
<Desc>Twister</Desc>
<Cost>0.48</Cost>
<Qty>01</Qty>
</Article>
<Article>
<Desc>The Times Newspaper</Desc>
<Cost>0.32</Cost>
<Qty>01</Qty>
</Article>
</Purchases>
<Amount>0.8</Amount>
</Statement>
<Statement Type="Monthly">
<Customer>
<Initials>TJ</Initials>
<Name>Dunnwin</Name>
<Balance>81.84</Balance>
</Customer>
<Purchases>
<Article>
<Desc>The Origin of Species</Desc>
<Cost>35.744</Cost>
<Qty>02</Qty>
</Article>
<Article>
<Desc>Microscope</Desc>
<Cost>57.92</Cost>
<Qty>01</Qty>
</Article>
</Purchases>
<Amount>129.40800000000002</Amount>
</Statement>
</SaleList>
</Parent>

Mensaje de salida esperado (JavaComputeTransformXPath)

Si utiliza el flujo de mensajes JavaComputeTransformXPathFlow, el mensaje de salida se formatea como en el siguiente ejemplo:

<SaleEnvelope>
<SaleList>
<Statement Type="Monthly" Style="Full">
<Customer>
<Initials>KA</Initials>
<Name>Braithwaite</Name>
<Balance>00.50</Balance>
</Customer>
<Purchases>
<Article>
<Desc>Twister</Desc>
<Cost>0.48</Cost>
<Qty>01</Qty>
</Article>
<Article>
<Desc>The Times Newspaper</Desc>
<Cost>0.32</Cost>
<Qty>01</Qty>
</Article>
</Purchases>
<Amount>0.8</Amount>
</Statement>
<Statement Type="Monthly" Style="Full">
<Customer>
<Initials>TJ</Initials>
<Name>Dunnwin</Name>
<Balance>81.84</Balance>
</Customer>
<Purchases>
<Article>
<Desc>The Origin of Species</Desc>
<Cost>35.744</Cost>
<Qty>02</Qty>
</Article>
<Article>
<Desc>Microscope</Desc>
<Cost>57.92</Cost>
<Qty>01</Qty>
</Article>
</Purchases>
<Amount>129.408</Amount>
</Statement>
</SaleList>
</SaleEnvelope>

Tenga en cuenta que puede haber ligeras diferencias entre el redondeo de mensajes de salida de JavaComputeTransformXPath y JavaComputeTransformNoXPath. Por lo tanto, es posible que vea 0.32000000000000006 en vez del 0.32 de arriba.

Icono de la página principalVolver al ejemplo Ejecutar el nodo JavaCompute