XA transaction supported in Talend esb?

One Star

XA transaction supported in Talend esb?

Hello,
I wonder if Talend esb runtime supports XA transaction.
For example, I need to receive a jms message then do some calculation to send a message out to jms queue and at the same time update 2 different databases (one Oracle, one SQLServer). I want to put these operations into the same transaction -- all fail or all succeed. Is this possible with Talend esb?
Otherwise, how to achieve this? Deploying to JEE container?
Thanks,
Xuetao
Moderator

Re: XA transaction supported in Talend esb?

Hi,
Please check the related Forum30929.
Best regards
Sabrina
--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
One Star

Re: XA transaction supported in Talend esb?

OK, I checked that post, you said last year that Talend was planning to support XA. But does it support XA now after a year? Or do you have a plan to share as when to support XA?
Thanks,
Xuetao
Moderator

Re: XA transaction supported in Talend esb?

Hi,
So far, it is not supported by talend. Please vote for related bug and it is welcome to add your comments in it.
https://jira.talendforge.org/browse/TESB-10795.
Best regards
Sabrina
--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
One Star

Re: XA transaction supported in Talend esb?

What is the relation between Karaf and Talend esb runtime then? Does Talend esb provides a runtime environment that runs the kar files? Or Talend is only able to export kar files to deploy to a standalone Karaf container?
Karaf does support XA transaction: http://www.liquid-reality.de/display/liquid/2012/07/20/Apache+Karaf+Tutorial+Part+7+-+Camel+JPA+and+...
Moderator

Re: XA transaction supported in Talend esb?

Hi,
The Talend Runtime container is based on Apache Karaf. Karaf Wrapper (for service wrapper) makes it possible to install the Talend Runtime container as a Windows Service.
TalendHelpCenter:Talend Runtime and TalendHelpCenter:Launching Talend Runtime.
Best regards
Sabrina
--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
One Star

Re: XA transaction supported in Talend esb?

Hello,
about the XA transactions and the link you've sent: Talend ESB Runtime is an Apache Karaf + there are plenty additional features (jobs, monitoring, configuration, ..) tuned to play together.
So - you are free to use it as an ordinary Apache Karaf / Servicemix container. That means if you develop and deploy your own OSGi bundles, camel routes, services, you are good to go and you can as well leverage XA capabilities (with JPA, JTA, .. there are already features prepared to be installed). Until you don't screw up the library versions you are pretty safe.
We use the Talend ESB Runtime as a Karaf container, because - it works and there's an option to support it by Talend - a commercial support we cannot (or are are not willing to) do.
However if we are talking about pure Talend features (developing in TOS), here you need to distinguish:
- Talend DI jobs - IMHO they were intended primary for data integration (even with capability to be exposed as a service), and we use the JMS to reliably distribute updates in a distributed environment. However - having the XA capability there could be useful for many people, like https://jira.talendforge.org/browse/TESB-10795
- Mediation routes - they are in reality the Camel routes. However the graphical design simplifies the prototyping and maintenance, one cannot (or - it is often difficult) have all the possible features a developer has with pure blueprint configuration.
- In the commercial version (I hope I am not wrong) you can develop Java modules in the TOS too, so you could can have a single IDE for Talend Jobs, Mediation Routes and your own custom OSGi bundles. Today we use another IDE to create our own feature archives (KAR files) and bundle exported Talend Jobs along.
As a conclusion - Talend ESB supports XA transactions in the runtime, however it is difficult to enforce them from the TOS (dev. studio) for DI jobs.
Carpe diem
Gabriel
Employee

Re: XA transaction supported in Talend esb?

Hi Gabriel,
That was a great response on XA, thanks for contributing that.
Web services developed in the Integration perspective fit very well in straightforward CRUD operations and cases where there is no mediation required and of course a strongly typed schema. I personally prefer Mediation routes because I prefer Camel, but in many cases like I just mentioned a DI service is the simpler option because you don't have to call cTalendJob to use the RDBMS components, etc.
You mentioned Java development within Talend Studio and I want to offer my view on that. I have a background in Java development as well, and while a lot of the Eclipse Java facilities are available in Studio, I would not use it as a Java IDE. The underlying project structure and plugin configuration don't really allow a clean Java IDE. I personally run a separate Eclipse with m2eclipse and maybe 1 or 2 other plugins installed for Java.
Thanks again
Ben
Six Stars

Re: XA transaction supported in Talend esb?

I know it is very old, but I just voted for the functionality to be implemented in IDE to support switching out-of-the-box ON/OFF.
https://jira.talendforge.org/browse/TESB-10795
This is true enterprise grade functionality.
Employee

Re: XA transaction supported in Talend esb?

Ladislav,
XA transactions are now supported and we do ship examples out of the box. This includes JMS-JMS and JMS-RDBMS and vice versa.
Best
Thomas
Thomas Steinborn
VP Product Management
Four Stars

Re: XA transaction supported in Talend esb?

Hi Ladislav

Can you please tell USthe Talend version which we can use for XA Transaction, or its is only supported by ESB.

Thanks
Anil Kumar Burri
Four Stars

Re: XA transaction supported in Talend esb?

Hi Team

Can anyone help me in implementing XA Transaction using Talend
Thanks
Anil Kumar Burri
https://anilkumarburri.wordpress.com
Six Stars

Re: XA transaction supported in Talend esb?

As soon as it is related to JMS subsystem, I assume it is related only to ESB product, and as mentioned by Thomas, specifically to JMS-JMS and JMS-RDBMS only scenarios in the moment.
What exactly do you need?