JDK-11 will remove a lot of older parts of the JDK (JEP-320). For some of them (e.g. JAXB) functionality will be provided as regular library. You simply add another dependency and everything works fine again.
But not so for CORBA, because
There is no significant interest in developing modern applications with CORBA in Java
I am however in the painful situation of needing to maintain older applications that still require CORBA while still wanting to update to JDK-11.
Is there a replacement-library out there or another good way of migrating to JDK-11 without removing the CORBA functionality of these applications?
You can definitely take a look at javaee/glassfish-corba. The documented home page reads -
The GlassFish ORB complies with the CORBA 2.3.1 specification, and with the CORBA 3.0 specifications for the Interoperable Name Service and Portable Interceptors. It includes both IDL and RMI-IIOP support. The GlassFish ORB has an open, extensible architecture that supports flexible configuration and extension through an open SPI.
Further what shall also interest developers, from the JEP itself -
The risks of removing the
java.corba
module are:1. CORBA implementations will not compile or run if they include only a subset of the "endorsed" CORBA APIs and expect the JDK to provide the remainder.
2. Applications and CORBA implementations that use RMI-IIOP will not compile or run. The RMI-IIOP packages (
javax.rmi
andjavax.rmi.CORBA
) are located in thejava.corba
module and tied to the CORBA implementation therein, so there will be no RMI-IIOP support in Java SE oncejava.corba
is removed.3. Applications and CORBA implementations that use the
javax.activity
package will not compile or run. This package is located in thejava.corba
module and tied to the CORBA implementation therein, so there will be no support in Java SE oncejava.corba
is removed.
and further down there
The transition of stewardship of Java EE from the JCP to the Eclipse Foundation includes the GlassFish implementation of CORBA and RMI-IIOP.
additionally,
javax.transaction : javax.transaction-api
.