Есть ли библиотека замены для CORBA в JDK 11

JDK-11 удалит много старых частей JDK (JEP-320). Для некоторых из них (например, JAXB) функциональность будет предоставляться как обычная библиотека. Вы просто добавляете другую зависимость, и все снова работает отлично.

Но не так для CORBA, потому что

Нет никакого существенного интереса к разработке современных приложений с CORBA в Java

Тем не менее, мне приходится беспокоиться о том, что вам необходимо поддерживать старые приложения, которые по-прежнему нуждаются в CORBA, но все же хотят обновить JDK-11.

Есть ли там библиотека замещения или другой хороший способ перехода на JDK-11 без удаления функциональности CORBA этих приложений?

Ответ 1

Вы можете определенно взглянуть на javaee/glassfish-corba. Записанная домашняя страница гласит:

ORB GlassFish соответствует спецификации CORBA 2.3.1 и спецификациям CORBA 3.0 для Interoperable Name Service и портативных перехватчиков. Он включает поддержку IDL и RMI-IIOP. ORB GlassFish имеет открытую расширяемую архитектуру, которая поддерживает гибкую настройку и расширение через открытый SPI.

Далее, что также будет интересовать разработчиков, от самого JEP -

Риск удаления модуля java.corba:

1. Реализации CORBA не будут компилироваться или выполняться, если они включают только подмножество "одобренных" API CORBA и ожидают, что JDK предоставит остальную часть.

2. Приложения и реализации CORBA, которые используют RMI-IIOP, не будут компилироваться или выполняться. Пакеты RMI-IIOP (javax.rmi и javax.rmi.CORBA) расположены в модуле java.corba и привязаны к реализации CORBA в нем, поэтому в Java SE не будет поддержки RMI-IIOP, после java.corba,

3. Приложения и реализации CORBA, которые используют пакет javax.activity, не будут компилироваться или выполняться. Этот пакет находится в модуле java.corba и привязан к реализации CORBA в нем, поэтому в Java SE не будет поддержки после java.corba.

и далее там

дополнительно,

Ответ 2

Я еще не перешел на Java 11, но у меня всегда были проблемы с реализацией Java CORBA, так как она была неполной и не поддерживала все методы Object, определенные в стандартах, не поддерживала ssliop и т.д. И т.д. Я всегда замените его, поместив jar JacORB OMG в одобренный каталог и установив системное свойство pont для сферы JacORB:

-Dorg.omg.CORBA.ORBclass= org.jacorb.orb.ORB -Dorg.omg.CORBA.ORBSingletonclass= org.jacorb.orb.ORBSingleton

КСТАТИ. Я не согласен с тем, что "" нет никакого значительного интереса к разработке современных приложений с использованием CORBA в Java ", на чем в действительности стоит J2EE?

Ответ 3

эта зависимость может быть использована в JDK11

        <dependency>
            <groupId>org.glassfish.corba</groupId>
            <artifactId>glassfish-corba-omgapi</artifactId>
            <version>4.2.1</version>
        </dependency>