Camel Component: XQuery - 6.3

Talend ESB Mediation Developer Guide

EnrichVersion
6.3
EnrichProdName
Talend Data Fabric
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
task
Design and Development
EnrichPlatform
Talend ESB

The xquery: component allows you to process a message using an XQuery template. This can be ideal when using Templating to generate responses for requests.

Maven users will need to add the following dependency to their pom.xml for this component:

<dependency>
   <groupId>org.apache.camel</groupId>
   <artifactId>camel-saxon</artifactId>
   <version>x.x.x</version>
   <!-- use the same version as your Camel core version -->
</dependency>

URI format

xquery:templateName[?options]  

where templateName is the classpath-local URI of the template to invoke; or the complete URL of the remote template.

For example you could use something like this:

from("activemq:My.Queue")
   .to("xquery:com/acme/mytransform.xquery");

To use an XQuery template to formulate a response to a message for InOut message exchanges (where there is a JMSReplyTo header).

If you want to use InOnly, consume the message, and send it to another destination, you could use the following route:

from("activemq:My.Queue")
   .to("xquery:com/acme/mytransform.xquery")
   .to("activemq:Another.Queue");