JTS was the Java EE standard for different JTA implementations to interoperate. Since CORBA (and therefore JTS) is now an optional component of Jakarta EE there is a need for an alternative specification for how services can propagate a transaction context. A popular alternative to CORBA is gRPC which has the following nice features: 1) it is a good technology choice for service to service interactions; 2) is polyglot or, as stated in the documentation, "Automatically generates idiomatic client and server stubs for your service in a variety of languages and platforms"; and 3) provides excellent performance.
The reason JTS was chosen as the Java EE interop standard is that 1) it provides language level bindings that enable interoperability; and 2) it builds on a pre-existing industry standard, namely OTS.
Consequently, it is reasonable to conclude that a mapping from CosTransactions.idl (the IDL definition for OTS) to Protocol Buffers and gRPC services will:
- Enable existing OTS/JTS implementations to provide service in these new environments.
- Enable new and existing gRPC services to be able to access transactional functionality in an interoperable manner.