JDK-11は、JDKの古い部分を多数削除します( JEP-32 )。それらの一部(JAXBなど)の機能は、通常のライブラリとして提供されます。別の依存関係を追加するだけで、すべてが再び正常に機能します。
CORBAの場合はそうではありません。なぜなら
JavaのCORBAを使用した最新のアプリケーションの開発に大きな関心はありません。
ただし、JDK-11に更新したいのにCORBAを必要とする古いアプリケーションを維持する必要があるという苦しい状況にあります。
これらのアプリケーションのCORBA機能を削除せずに、JDK-11に移行する代替ライブラリや他の良い方法はありますか?
javaee/glassfish-corba をぜひご覧ください。文書化された ホームページ 読み取り-
GlassFish ORBは、CORBA 2.3.1仕様、およびInteroperable Name ServiceおよびPortable InterceptorのCORBA 3.0仕様に準拠しています。 IDLとRMI-IIOPの両方のサポートが含まれています。 GlassFish ORBには、オープンなSPIによる柔軟な構成と拡張をサポートするオープンで拡張可能なアーキテクチャがあります。
さらに、JEP自体から開発者の関心を引くもの-
Java.corba
モジュールを削除するリスクは次のとおりです。1。「承認された」CORBA APIのサブセットのみが含まれている場合、CORBA実装はコンパイルまたは実行されませんJDKが残りを提供することを期待します。
2。RMI-IIOPを使用するアプリケーションおよびCORBA実装はコンパイルまたは実行されません。 RMI-IIOPパッケージ(
javax.rmi
およびjavax.rmi.CORBA
)はJava.corba
モジュールにあり、その中のCORBA実装に関連付けられているため、RMI-Java.corba
が削除されると、Java SEでのIIOPサポートがサポートされます。3。
javax.activity
パッケージを使用するアプリケーションおよびCORBA実装は、コンパイルまたは実行されません。このパッケージはJava.corba
モジュールにあり、CORBA実装に関連付けられているため、Java.corba
が削除されるとJava SEではサポートされません。
そしてさらに下に
Java EEからJCPからEclipse Foundationへのスチュワードシップの移行には、CORBAおよびRMI-IIOPのGlassFish実装。
さらに、
javax.transaction : javax.transaction-api
とともに実装されます。私はまだJava 11に移動していませんが、不完全であり、すべてのオブジェクトをサポートしていないため、とにかくJava CORBA実装に問題がありました。標準で定義されたメソッド、ssliopなどをサポートしていません。など。常にJacORB OMG jarを承認済みディレクトリに配置し、システムプロパティをJacORB orbのpontに設定することで置き換えました。
-Dorg.omg.CORBA.ORBClass = org.jacorb.orb.ORB -Dorg.omg.CORBA.ORBSingletonClass = org.jacorb.orb.ORBSingleton
ところで。私は、J2EEが何の上に座っているのに、「JavaでCORBAを使用した最新のアプリケーションを開発することに大きな関心はない」ことに同意しません。
この依存関係はJDK11で使用できます
<dependency>
<groupId>org.glassfish.corba</groupId>
<artifactId>glassfish-corba-omgapi</artifactId>
<version>4.2.1</version>
</dependency>