Sun demonstrates WS-AT interoperability with Microsoft
Supporting these standards in our web services stack allows you to write fault tolerant applications that bridge across heterogeneous systems. Java EE developers can easily write applications that take advantage of distributed transactions that span multiple Java EE application servers (without needing WSIT). What WSIT adds is the ability to include transacted web service methods (think "container managed transactions for servlets") and also bridge across heterogeneous systems (think "Microsoft"). In a homogeneous GlassFish system, distributed transactions flow across RMI/IIOP. In a heterogenous web service environment, the transactions use the WS-Coordination and WS-AtomicTransaction protocols to flow transactional context and execute the two-phase commit protocol.There's a screencast available too that shows the system in action.
It's interesting that with the exception of WS-CAF and it's associated WS-TransactionManagement, Sun were not very active in the OASIS WS-TX technical committee. That group held several interoperability events over the years, based on complex interoperability scenarios developed within the group. IBM, IONA Technologies, JBoss/Red Hat and Microsoft participated, but Sun was notable by their absence (as was BEA, one of the original specification authors). Oracle are the other traditional transaction vendor who has remained silent (since WS-CAF).
It will be interesting to see if Sun moves to support WS-BusinessActivity, or remains with WS-AtomicTransaction. It's true that if you have JTA then doing WS-AtomicTransaction should be straightforward, but WS-BusinessActivity addresses a whole different range of use cases that are quite important in long running, loosely coupled interactions.
2. Interop of protocols (in the manner of the TC interop tests) is a very different matter from producing genuine interoperable distributed transaction environments. For example: the J2EE JTA interface doesn't allow importation of external transactions, and the JTS interface (which does, and is implemented by WAS or JBoss/Arjuna) is CORBA-dependent. The issues of transaction propagation, sub-coordination, and application participant writing are the real problems yet to be solved for WS transactions. Some are standard interface issues for language environments. But application participant writing is an area where industry practice is in its infancy.
Beware protocol testers masquerading as usable distributed transactional environments.
3. Choreology also participated in the WS-AT WS-TX interops, but not in the WS-BA tests.
4. WS-CAF (Context etc) is/was a quite separate initiative from WS-TX.
5. I'd have said that Sun was virtually invisible in the transactional chapter of WS-CAF (which died a death when IONA and Arjuna-then-JBoss went over to WS-TX). Sun put more oomph into WS-TX, in the context of their WS interoperation work with Microsoft, one of whose fruits we are now seeing in this announcement.
Ralph Winzinger Nov 25, 2014