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.
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>
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:
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.
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>
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.