このドキュメントでは、CORBAの機能に関連してJDK 1.3と5.0の間で変更されたすべてのAPIについて情報を提供します。この変更は、JDK 5.0に組み込まれるCORBA技術用のAPIを、次に示すOMGドキュメントに規定されているCORBA 2.3マッピングに準拠させるために行われたものです。
CORBAバージョン2.3仕様で規定されているIDLからJavaへのマッピングに準拠するため、次に示すorg.omg.COSNamingクラスを、JDKに同梱されているidljコンパイラで再生成しました。この変更(CCC 4284015)には、次のようなAPIの変更が含まれます。互換性への影響: なし。
CORBA V (2.3)のセクション1.5.2にあるすべてのHelperに関する仕様(ptc/00-01-08.pdf)に準拠するため、Helperはすべてabstract publicクラスになりました。次に、org.omg.CosNamingに属するクラスでabstract publicクラスに変更されたすべてのHelperクラスを示します。
セクション1.7にあるOMG仕様(ptc/00-01-08.pdf)の「Mapping for Enum」に準拠するため、次に示すEnumコンストラクタのマッピングがprotectedに変更されました。
クラス | 変更前 | 変更後 |
---|---|---|
BindingType.java | private BindingType(int) | protected BindingType(int) |
NotFoundReason.java | private NotFoundReason(int) | protected NotFoundReason(int) |
CORBA 2.3仕様(ptc/00-01-08.pdf)の「Deletion of constructors in Stub classes」に準拠するため、次に示すコンストラクタが削除されました。
クラス | 変更前 | 変更後 |
---|---|---|
_BindingIteratorStub.java | public _BindingIteratorStub(org.omg.CORBA.portable.Delegate d) | このコンストラクタは削除。 |
_NamingContextStub.java | public _NamingContextStub(org.omg.CORBA.portable.Delegate d) | このコンストラクタは削除。 |
CORBA 2.3仕様(ptc/00-01-08.pdf)に準拠するため、次に示す例外が変更されました。
クラス | 変更前 | 変更後 |
---|---|---|
AlreadyBound.java | public final class AlreadyBound extends org.omg.CORBA.UserException implements org.omg.CORBA.portable.IDLEntity | public final class AlreadyBound extends org.omg.CORBA.UserException |
AlreadyBound.java | デフォルト・コンストラクタのみ | 新しいコンストラクタpublic AlreadyBound (String reason)を追加 |
CannotProceed.java | public final class CannotProceed extends org.omg.CORBA.UserException implements org.omg.CORBA.portable.IDLEntity | public final class CannotProceed extends org.omg.CORBA.UserException |
CannotProceed.java | デフォルト・コンストラクタのみ | 新しいコンストラクタpublic CannotProceed (String reason)を追加 |
InvalidName.java | public final class InvalidName extends org.omg.CORBA.UserException implements org.omg.CORBA.portable.IDLEntity | public final class InvalidName extends org.omg.CORBA.UserException |
InvalidName.java | デフォルト・コンストラクタのみ | 新しいコンストラクタpublic InvalidName (String reason)を追加 |
NotEmpty.java | public final class NotEmpty extends org.omg.CORBA.UserException implements org.omg.CORBA.portable.IDLEntity | public final class NotEmpty extends org.omg.CORBA.UserException |
NotEmpty.java | デフォルト・コンストラクタのみ | 新しいコンストラクタpublic NotEmpty (String reason)を追加 |
NotFound.java | public final class NotFound extends org.omg.CORBA.UserException implements org.omg.CORBA.portable.IDLEntity | public final class NotFound extends org.omg.CORBA.UserException |
NotFound.java | デフォルト・コンストラクタのみ | 新しいコンストラクタpublic NotFound (String, org.omg.CosNaming.NamingContextPackage.NotFoundReason, org.omg.CosNaming.NameComponent[])を追加 |
CORBA 2.3仕様に準拠するため、次に示すクラスが追加されました。
CORBA 2.3仕様に準拠するため、次に示すクラスが非推奨になりました。
private static String_id = "IDL:omg.org/CORBA/IDLType:2.3";
を、次のように変更しました。
private static String_id = "IDL:omg.org/CORBA/IDLType:1.0";
互換性への影響: はい。この変更は、既存の実装との相互運用性に影響を与えることがあります。COMM_FAILURE例外(または類似の例外)を受け取った場合は、アプリケーションおよびIRを再起動してください。(CCC 4372718)
互換性への影響: はい。このコンパイラを使用する既存のプログラムに対してidljを呼び出すときに互換性を維持するには、-oldImplBaseフラグを追加する必要があります。(CCC 4407835)
J2SE 5.0バージョンのCalendarのwriteObjectメソッドでは、ZoneInfoオブジェクトを書き出します。同様に、そのオブジェクトを読み取るにはreadObjectメソッドを呼び出します。古いバージョンと対話している場合は、オブジェクトが存在しないため、ストリームはJavaオブジェクト直列化仕様に基づきEOFExceptionをスローします。ストリームの位置は変わりません。