ヘッダーをスキップ
Oracle Application Server TopLinkアプリケーション開発者ガイド
10gリリース2(10.1.2)
部品番号: B19121-01
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

例外のエラー・コードと説明

この項では、OracleAS TopLink例外のエラー・コード、問題の原因として考えられること、および修正処置を示します。

各エラー・コードは例外クラスに対応しており、次の情報を含んでいます。

ディスクリプタ例外(1〜179)

ディスクリプタ例外は、ディスクリプタに指定した情報が不十分な場合に発生する開発例外です。返されるメッセージには、例外の原因となったディスクリプタまたはマッピングの名前が含まれています。ディスクリプタ内のマッピングがエラーの原因である場合、例C-1に示すように、マッピングの名前とパラメータがメッセージの一部として返されます。

内部例外、マッピングおよびディスクリプタが表示されるのは、OracleAS TopLinkに問題の原因についての十分な情報があり、この情報を提供できる場合のみです。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message
MAPPING: Database mapping
DESCRIPTOR: Descriptor

例C-1 ディスクリプタ例外

EXCEPTION [TOPLINK – 75]: oracle.toplink.exceptions.DescriptorException
EXCEPTION DESCRIPTION: The reference class is not specified.

1: ATTRIBUTE_AND_MAPPING_WITH_INDIRECTION_ MISMATCH
原因: attributeNameがタイプValueHolderInterfaceとして宣言されていませんが、マッピングではインダイレクションが使用されます。マッピングはインダイレクションを使用するように設定されていますが、関連属性がタイプValueHolderInterfaceとして定義されていません。この例外は、外部参照マッピングに対してスローされます。
処置: マッピングでインダイレクションを使用する場合は、属性をタイプValueHolderInterfaceに変更します。または、インダイレクションを使用しないよう、属性に関連付けられているマッピングを変更します。
2: ATTRIBUTE_AND_MAPPING_WITHOUT_INDIRECTION_ MISMATCH
原因: attributeNameがタイプValueHolderInterfaceとして宣言されていますが、OracleAS TopLinkではインダイレクションを使用できません。属性はタイプValueHolderInterfaceに定義されていますが、マッピングがインダイレクションを使用するように設定されていません。この例外は、外部参照マッピングに対してスローされます。
処置: マッピングでインダイレクションを使用しない場合は、属性をタイプValueHolderInterface以外に変更します。または、インダイレクションを使用するよう、属性に関連付けられているマッピングを変更します。
6: ATTRIBUTE_NAME_NOT_SPECIFIED
原因: 属性名がないか、マッピング定義に指定されていません。
処置: メソッドsetAttributeName(String attribute name)をコールして、マッピングに属性名を指定します。
7: ATTRIBUTE_TYPE_NOT_VALID
原因: Java 2を使用する場合、指定したattributeNameVectorタイプ(MapまたはCollectionインタフェースを実装するタイプ)として定義されていません。これは、マッピングがインダイレクションを使用するように設定されており、属性タイプが宣言されていない場合に、1対多マッピング、多対多マッピングおよびコレクション・マッピングで発生します。
処置: 属性をjava.util.Vectorタイプとして宣言します。
8: CLASS_INDICATOR_FIELD_NOT_FOUND
原因: クラス・インジケータ・フィールドが定義されていますが、ディスクリプタは継承を使用するように設定されています。継承を使用する場合、クラス・インジケータ・フィールドまたはクラス抽出メソッドを設定する必要があります。クラス・インジケータ・フィールドは、正しいタイプのドメイン・オブジェクトを作成するために使用されます。
処置: クラス・インジケータ・フィールドまたはクラス抽出メソッドを設定します。
9: DIRECT_FIELD_NAME_NOT_SET
原因: ダイレクト・コレクション・マッピングにターゲット表の直接フィールド名が設定されていません。
処置: メソッドsetDirectFieldName(String fieldName)をコールして、直接フィールド名を指定します。
10: FIELD_NAME_NOT_SET_IN_MAPPING
原因: フィールド名がマッピングに設定されていません。この例外は、フィールドへ直接マッピング、配列マッピングおよび構造マッピングからスローされます。
処置: メソッドsetFieldName(String fieldName)をコールして、フィールド名を指定します。
11: FOREIGN_KEYS_DEFINED_INCORRECTLY
原因: 1対1マッピングの外部キーが正しく定義されていません。メソッドsetForeignKeyFieldName(String fieldName)をコールすることで、複数の外部キー・フィールドが1対1マッピングに対して設定されました。
処置: 複数の外部キー・フィールドを追加するには、メソッドaddForeignKeyFieldName(String sourceForeignKeyName, String targetPrimaryKeyFieldName)を使用します。
12: IDENTITY_MAP_NOT_SPECIFIED
原因: キャッシュの存在をチェックするオプションを使用するには、ディスクリプタでアイデンティティ・マップを使用する必要があります。ディスクリプタはアイデンティティ・マップを使用しないように設定されていますが、存在チェックがアイデンティティ・マップに対して実行するように設定されています。
処置: アイデンティティ・マップを使用するか、または存在チェックを別のオプションに設定します。
13: ILLEGAL_ACCESS_WHILE_GETTING_VALUE_THRU_ INSTANCE VARIABLE_ACCESSOR
原因: OracleAS TopLinkがオブジェクトobjectNameattributeNameインスタンス変数にアクセスできません。ドメイン・オブジェクトのインスタンス変数にアクセスできません。この例外は、OracleAS TopLinkがjava.lang.reflect APIパッケージ(Javaリフレクション)を使用してインスタンス変数にアクセスしようとしたときにスローされます。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
14: ILLEGAL_ACCESS_WHILE_CLONING
原因: クローン・メソッドmethodNameにアクセスできないため、OracleAS TopLinkがオブジェクトdomainObjectをクローン化できません。useCloneCopyPolicy(String cloneMethodName)またはclone()メソッドを使用してドメイン・オブジェクトでのクローン作成のために指定したメソッド名に、OracleAS TopLinkがJavaリフレクションを使用してアクセスできません。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
15: ILLEGAL_ACCESS_WHILE_CONSTRUCTOR_INSTANTIATION
原因: ドメイン・クラスにパブリック・デフォルト・コンストラクタが定義されていません。OracleAS TopLinkでは、ドメイン・クラスの新規インスタンスを作成するために、このコンストラクタが必要です。
処置: パブリック・デフォルト・コンストラクタを定義するか、別のインスタンス化ポリシーを使用します。
16: ILLEGAL_ACCESS_WHILE_EVENT_EXECUTION
原因: DescriptorEventが引数として指定されているディスクリプタ・コールバック・メソッドeventMethodNameにアクセスできません。この例外は、OracleAS TopLinkがJavaリフレクションを使用してイベント・メソッドにアクセスしようとしたときにスローされます。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
17: ILLEGAL_ACCESS_WHILE_GETTING_VALUE_THRU_ METHOD_ACCESSOR
原因: アクセスできないmethodNameをオブジェクトobjectNameに対して起動しようとしています。ドメイン・オブジェクト内の属性にアクセスするための基礎となるアクセッサ取得メソッドにアクセスできません。この例外は、OracleAS TopLinkがJavaリフレクションを使用し、メソッドを通じて属性にアクセスしようとしたときにスローされます。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
18: ILLEGAL_ACCESS_WHILE_INSTANTIATING_METHOD_ BASED_PROXY
原因: ValuHolderを使用するトランスフォーメーション・マッピングで使用されるメソッドが無効です。この例外は、OracleAS TopLinkがJavaリフレクションを使用してメソッドにアクセスしようとしたときにスローされます。この問題は、メソッドの基本ValueHolderがインスタンス化されたときに発生します。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
19: ILLEGAL_ACCESS_WHILE_INVOKING_ATTRIBUTE_METHOD
原因: トランスフォーメーション・マッピングで、トランスフォーメーション・マップ属性の読取り中にデータベース行から値を取得するために使用される、基礎となる属性メソッドにアクセスできません。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
20: ILLEGAL_ACCESS_WHILE_INVOKING_FIELD_TO_METHOD
原因: トランスフォーメーション・マッピングで、トランスフォーメーション・マップ属性の書込み中にオブジェクトから値を取得するために使用される、メソッドmethodNameにアクセスできません。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
21: ILLEGAL_ACCESS_WHILE_INVOKING_ROW_EXTRACTION_ METHOD
原因: メソッドのdatabaseRow引数に指定されている行に対してアクセスできないため、OracleAS TopLinkがデータrowを抽出できませんでした。ドメイン・オブジェクトの行からクラスを抽出するためのメソッドにアクセスできません。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
22: ILLEGAL_ACCESS_WHILE_METHOD_INSTANTIATION
原因: ドメイン・クラスでインスタンスを作成するメソッドmethodNameにアクセスできないため、OracleAS TopLinkが新規インスタンスを作成できません。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
23: ILLEGAL_ACCESS_WHILE_OBSOLETE_EVENT_EXECUTION
原因: Sessionが引数として指定されているディスクリプタ・コールバック・メソッドeventMethodNameにアクセスできません。この例外は、OracleAS TopLinkがJavaリフレクションを使用してイベント・メソッドにアクセスしようとしたときにスローされます。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
24: ILLEGAL_ACCESS_WHILE_SETTING_VALUE_THRU_ INSTANCE_VARIABLE_ACCESSOR
原因: オブジェクトobjectNameattributeNameインスタンス変数にJavaリフレクションを通じてアクセスできません。このエラーはJavaでスローされたものであり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
25: ILLEGAL_ACCESS_WHILE_SETTING_VALUE_THRU_ METHOD_ACCESSOR
原因: OracleAS TopLinkが、パラメータparameterを持つオブジェクトに対してメソッドsetMethodNameを起動できません。属性のアクセッサ設定メソッドにJavaリフレクションを通じてアクセスできません。このエラーはJavaでスローされたものであり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
26: ILLEGAL_ARGUMENT_WHILE_GETTING_VALUE_ THRU_INSTANCE_VARIABLE_ACCESSOR
原因: OracleAS TopLinkが、タイプtypeNameのインスタンス変数attributeNameの値をオブジェクトから取得できません。指定したオブジェクトは、基礎となるフィールドを宣言するクラスまたはインタフェースのインスタンスではありません。オブジェクトは、存在しないインスタンス変数の値を取得するためにアクセスされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
27: ILLEGAL_ARGUMENT_WHILE_GETTING_VALUE_THRU_ METHOD_ACCESSOR
原因: OracleAS TopLinkが、オブジェクトobjectNameに対してメソッドmethodNameを起動できません。ドメイン・オブジェクトでのアクセッサ取得メソッドの宣言が、定義されている宣言と異なります。実際のパラメータ数と正規のパラメータ数が異なっているか、アンラップ変換に失敗しました。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
28: ILLEGAL_ARGUMENT_WHILE_INSTANTIATING_METHOD_ BASED_PROXY
原因: メソッドベースのプロキシによってトランスフォーメーション・マッピングで使用されるメソッドが、ValueHolderの初期化の際に無効な引数をとっています。この例外は、OracleAS TopLinkがJavaリフレクションを使用してメソッドにアクセスしようとしたときにスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
29: ILLEGAL_ARGUMENT_WHILE_INVOKING_ATTRIBUTE_ METHOD
原因: 実際のパラメータ数と正規のパラメータ数が異なっているか、アンラップ変換に失敗しました。トランスフォーメーション・マッピングで、トランスフォーメーション・マップ属性の読取り中にデータベース行から値を取得するために使用されるメソッドが、無効な引数をとっています。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
30: ILLEGAL_ARGUMENT_WHILE_INVOKING_FIELD_TO_ METHOD
原因: メソッドmethodNameの実際のパラメータ数と正規のパラメータ数が異なっているか、アンラップ変換に失敗しました。トランスフォーメーション・マッピングで、トランスフォーメーション・マップ属性の書込み中にオブジェクトから値を取得するために使用されるメソッドが、無効な引数をとっています。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
31: ILLEGAL_ARGUMENT_WHILE_OBSOLETE_EVENT_ EXECUTION
原因: ディスクリプタ・コールバック・メソッドeventMethodNameの実際のパラメータ数と正規のパラメータ数が異なっているか、アンラップ変換に失敗しました。コールバック・イベント・メソッドが無効な引数で起動されています。この例外は、OracleAS TopLinkがJavaリフレクションを使用してイベント・メソッドを起動しようとしたときにスローされます。このエラーは純粋なJava例外であり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
32: ILLEGAL_ARGUMENT_WHILE_SETTING_VALUE_THRU_ INSTANCE_VARIABLE_ACCESSOR
原因: 属性のインスタンス変数に無効な値が割り当てられています。OracleAS TopLinkは、タイプtypeNameのインスタンス変数attributeNamevalueをオブジェクトに設定できません。指定したオブジェクトが、基礎となるフィールドを宣言するクラスまたはインタフェースのインスタンスではないか、アンラップ変換に失敗しました。

OracleAS TopLinkは、Javaリフレクションを使用して値を割り当てます。このエラーはJavaでスローされたものであり、OracleAS TopLinkではリフレクション例外のみがラップされます。

処置: 内部例外を調べ、Javaのドキュメントを参照してください。
33: ILLEGAL_ARGUMENT_WHILE_SETTING_VALUE_THRU _METHOD_ACCESSOR
原因: 属性のアクセッサ設定メソッドに無効な引数が渡されています。OracleAS TopLinkは、オブジェクトに対してメソッドmethodNameを起動できません。実際のパラメータ数と正規のパラメータ数が異なっているか、アンラップ変換に失敗しました。このエラーはJavaでスローされたものであり、OracleAS TopLinkではリフレクション例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
34: INSTANTIATION_WHILE_CONSTRUCTOR_INSTANTIATION
原因: クラスにパブリック・デフォルト・コンストラクタが定義されていないか、コンストラクタで例外が発生しました。このエラーは、新規ドメイン・オブジェクトの作成中に、オブジェクトの新規インスタンス作成のためにドメイン・オブジェクトのデフォルト・コンストラクタを起動したときに、次の状況が起こると発生します。
  • クラスが抽象クラス、インタフェース、配列クラス、プリミティブ・タイプ、またはvoidを表している場合

  • 他の原因でインスタンス化に失敗した場合。

このエラーはJavaでスローされたものであり、OracleAS TopLinkではリフレクション例外のみがラップされます。

処置: 内部例外を調べ、Javaのドキュメントを参照してください。
35: INVALID_DATA_MODIFICATION_EVENT
原因: アプリケーションで発生することは考えられない例外です。この例外は通常、OracleAS TopLinkの開発時に発生するものです。ただし、開発者が新規マッピングを作成する場合には、この例外が発生する可能性があります。ダイレクト・コレクション・マッピングと多対多マッピングでは、コミット・プロセスの最後にターゲット表とリレーショナル表にデータが移入されます。データ変更イベントが他のマッピングに送信されると、この例外がスローされます。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
36: INVALID_DATA_MODIFICATION_EVENT_CODE
原因: アプリケーションで発生することは考えられない例外です。この例外は通常、OracleAS TopLinkの開発時に発生するものです。ただし、新規マッピングを作成する場合には、この例外が発生する可能性があります。ダイレクト・コレクション・マッピングと多対多マッピングでは、コミット・プロセスの最後にターゲット表とリレーショナル表にデータが移入されます。データ変更イベントがこれら2つのマッピングに誤ったイベント・コードで送信されると、この例外がスローされます。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
37: INVALID_DESCRIPTOR_EVENT_CODE
原因: アプリケーションで発生することは考えられない例外です。この例外は、通常、OracleAS TopLinkの開発時に発生します。この例外は、ディスクリプタ・イベント・マネージャがイベントで渡されたイベント・コードをサポートしていないことを意味します。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
38: INVALID_IDENTITY_MAP
原因: 無効なアイデンティティ・マップが指定されたため、アイデンティティ・マップ・コンストラクタが失敗しました。ディスクリプタに指定されたアイデンティティ・マップ・クラスをインスタンス化できません。この例外は、OracleAS TopLinkがアイデンティティ・マップ・クラスをインスタンス化するときにJavaリフレクションによってスローされるJava例外です。OracleAS TopLinkでは、Java例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
39: JAVA_CLASS_NOT_SPECIFIED
原因: ディスクリプタにJavaクラスが定義されていません。Javaクラスがディスクリプタに指定されていません。
処置: Javaクラスを指定します。
40: DESCRIPTOR_FOR_INTERFACE_IS_MISSING
原因: 参照されるインタフェースのディスクリプタがセッションに追加されていません。
処置: そのディスクリプタをセッションに追加します。
41: MAPPING_FOR_SEQUENCE_NUMBER_FIELD
原因: 読取り専用ではないマッピングが順序番号フィールドに対して定義されていません。OracleAS TopLinkで主キーの値の挿入と抽出を行えるようにするには、マッピングが必要です。
処置: マッピングを定義します。
43: MISSING_CLASS_FOR_INDICATOR_FIELD_VALUE
原因: タイプtypeのインジケータ・フィールド値classFieldValueに対するクラスがありません。データベースから読み取られたインジケータ・フィールド値の継承ポリシーに、クラス・エントリが見つかりませんでした。メソッドaddClassIndicator(Class class, Object typeValue)がそのフィールド値に対してコールされなかった可能性があります。クラスとtypeValueはハッシュ・テーブルに格納されます。その後、typeValueをキーとして渡すことで、クラスがハッシュ・テーブルから抽出されます。Integer(1)Float(1)と同等ではないため、typeValueのタイプが正しく指定されていないと、この例外が発生します。
処置: ディスクリプタを確認します。
44: MISSING_CLASS_INDICATOR_FIELD
原因: データベースから読み取られたデータベースrowに、クラス・インジケータ・フィールドがありません。これは、データベースから行を読み取った後、タイプ・インジケータ値に応じて子ドメイン・オブジェクトが構成される継承モデルで実行されます。
処置: 表示された行のスペルが正しいかどうかを確認します。
45: MISSING_MAPPING_FOR_FIELD
原因: fieldのマッピングがありません。フィールドのマッピングが指定されていません。
処置: フィールドのマッピングを定義します。
46: NO_MAPPING_FOR_PRIMARY_KEY
原因: 主キーのマッピングが指定されていません。主キー・フィールドに対して、読取り専用ではないマッピングが1つ定義されている必要があります。
処置: 主キーのマッピングを定義します。
47: MULTIPLE_TABLE_PRIMARY_KEY_NOT_SPECIFIED
原因: カスタムの複数表結合が使用されるときは、複数表の主キー・マッピングを指定する必要があります。ディスクリプタに複数の表が指定され、結合式がカスタマイズされている場合、すべての表に対して主キーを指定する必要があります。主キーが指定されていないと、例外が発生します。
処置: メソッドaddMultipleTablePrimaryKeyFieldName(String fieldNameInPrimaryTable, String fieldNameInSecondaryTable)をディスクリプタに対してコールし、主キーを設定します。
48: MULTIPLE_WRITE_MAPPINGS_FOR_FIELD
原因: フィールドfieldNameに対して、複数の書込み可能マッピングがディスクリプタに定義されています。書込み可能として定義するのは1つだけとし、他のマッピングは読取り専用に指定する必要があります。複数の書込みマッピングがフィールドに対して定義されていると、OracleAS TopLinkでは、データベース行のフィールド値を書き込むための適切なマッピングを選択できません。そのため、ディスクリプタの検証プロセスで例外がスローされます。

この問題が最もよく発生するのは、フィールドが、フィールドへ直接マッピングと1対1マッピングを有している場合です。この場合、1対1マッピングを読取り専用にするか、ターゲット外部キー参照にする必要があります。

処置: いずれかのマッピングを読取り専用にします。
49: NO_ATTRIBUTE_TRANSFORMATION_METHOD
原因: トランスフォーメーション・マッピングに属性変換メソッドの名前が指定されていません。このメソッドは、ドメイン・オブジェクトに格納する値の取得のために、OracleAS TopLinkで内部的に起動されます。
処置: メソッドsetAttributeTransformation(String methodName)をコールすることで、メソッドを定義し、マッピングにメソッド名を設定します。
50: NO_FIELD_NAME_FOR_MAPPING
原因: フィールドへ直接マッピングにフィールド名が指定されていません。
処置: メソッドsetFieldName(String FieldName)をコールして、フィールドを設定します。
51: NO_FOREIGN_KEYS_ARE_SPECIFIED
原因: 1対1マッピングに選択基準と外部キーのいずれも指定されていませんでした。選択基準が指定されていない場合、OracleAS TopLinkはマッピングに指定された外部キーから選択基準を作成しようとします。
処置: フィールドを指定します。
52: NO_REFERENCE_KEY_IS_SPECIFIED
原因: queryKeyという名前の問合せキーがdescriptorに見つかりません。ダイレクト・コレクション・マッピングにターゲット表の参照キーが指定されていません。
処置: メソッドsetReferenceKeyFieldName(String fieldName)をコールして、フィールドを指定します。
53: NO_RELATION_TABLE
原因: この多対多マッピングにリレーション表の名前が設定されていません。
処置: メソッドsetRelationTableName(String tableName)をコールして、リレーション表の名前を設定します。
54: NO_SOURCE_RELATION_KEYS_SPECIFIED
原因: この多対多マッピングにソース・リレーション・キーが指定されていません。
処置: ソース・リレーション・キーをマッピングに追加します。
55: NO_SUCH_METHOD_ON_FIND_OBSOLETE_METHOD
原因: ディスクリプタ・コールバック・メソッドselectorがドメイン・クラスに見つかりません。このメソッドは、SessionまたはDescriptorEventを引数としてとります。OracleAS TopLinkは、Javaリフレクションを使用してこのメソッドを起動しようとしています。これはJava例外であり、OracleAS TopLinkでは主要な例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
56: NO_SUCH_METHOD_ON_INITIALIZING_ ATTRIBUTE_METHOD
原因: パラメータdatabaseRowまたはdatabaseRow, sessionを指定したメソッドattributeMethodNameが見つかりません。OracleAS TopLinkでは、メソッドがメソッド名から作成されるときに発生するJavaリフレクション例外がラップされます。このメソッドは、setAttributeMethodName(String aMethodName)をコールすることで設定します。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
57: NO_SUCH_METHOD_WHILE_CONSTRUCTOR_INSTANTIATION
原因: コンストラクタがOracleAS TopLinkにアクセスできません。OracleAS TopLinkでは、ドメインの新規インスタンスの作成時に発生するJavaリフレクション例外がラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
58: NO_SUCH_METHOD_WHILE_CONVERTING_TO_METHOD
シグネチャmethodName()またはmethodName(oracle.toplink.sessions.Session)を持つメソッドが見つかりませんでした。OracleAS TopLinkでは、トランスフォーメーション・マッピング内のメソッド名からMethodjava.lang.reflect.Method)タイプを作成するときに発生するJavaリフレクション例外がラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
59: NO_SUCH_FIELD_WHILE_INITIALIZING_ATTRIBUTES_ IN_INSTANCE_VARIABLE_ACCESSOR
原因: インスタンス変数attributeNameがドメイン・クラス内に定義されていないか、またはこのインスタンス変数にアクセスできません。OracleAS TopLinkでは、属性名からFieldjava.lang.reflect.Field)タイプを作成するときに発生するJavaリフレクション例外がラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
60: NO_SUCH_METHOD_WHILE_INITIALIZING_ATTRIBUTES_IN_METHOD_ACCESSOR
原因: アクセッサ・メソッドsetMethodNameまたはgetMethodNameがドメイン・クラスjavaClassName内の属性に対して定義されていないか、またはこのアクセッサ・メソッドにアクセスできません。OracleAS TopLinkでは、メソッド名からMethodタイプを作成するときに発生するJavaリフレクション例外がラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
61: NO_SUCH_METHOD_WHILE_INITIALIZING_ CLASS_EXTRACTION_METHOD
原因: databaseRowが引数として指定されているstaticクラス抽出メソッドmethodNameが存在しないか、このメソッドにアクセスできません。クラス抽出メソッドが継承ポリシーのメソッド名から作成されるときに、OracleAS TopLink例外にラップされたJavaリフレクション例外がスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
62: NO_SUCH_METHOD_WHILE_INITIALIZING_COPY_POLICY
原因: 引数の指定されていないクローン・メソッドmethodNameが存在しないか、このメソッドにアクセスできません。クローンを作成するメソッドがコピー・ポリシーのメソッド名から作成されるときに、OracleAS TopLink例外にラップされたJavaリフレクション例外がスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
63: NO_SUCH_METHOD_WHILE_INITIALIZING_INSTANTIATION_POLICY
原因: 引数の指定されていないインスタンス作成メソッドmethodNameが存在しないか、このメソッドにアクセスできません。新規インスタンスを作成するメソッドがインスタンス化ポリシーのメソッド名から作成されるときに、OracleAS TopLink例外にラップされたJavaリフレクション例外がスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
64: NO_TARGET_FOREIGN_KEYS_SPECIFIED
原因: 1対多マッピングにターゲット表の外部キーが指定されていません。このフィールドは、マッピングに選択基準が指定されていれば不要ですが、それ以外の場合は指定する必要があります。
処置: ターゲットの外部キーまたは選択基準を設定します。
65: NO_TARGET_RELATION_KEYS_SPECIFIED
原因: 多対多マッピングにターゲット・リレーション・キーが指定されていません。
処置: メソッドaddTargetRelationKeyFieldName(String targetRelationKeyFieldName, String targetPrimaryKeyFieldName)をコールして、フィールドを設定します。
66: NOT_DESERIALIZABLE
原因: データベースから読み取ったバイト配列から、オブジェクトをデシリアライズできません。この例外は、シリアライズされたオブジェクト・マッピングによってバイト配列がオブジェクトに変換されるときにスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
67: NOT_SERIALIZABLE
原因: オブジェクトをバイト配列にシリアライズできません。この例外は、シリアライズされたオブジェクト・マッピングによってオブジェクトがバイト配列に変換されるときにスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
68: NULL_FOR_NON_NULL_AGGREGATE
原因: ソース・オブジェクトobjectの集計値がnullです。null値は、集計マッピングに「NULLを許容」が指定されていないかぎり、集計マッピングでは使用できません。
処置: マッピング・メソッドallowNull()をコールします。パラメータを指定するのは、foo()foo(integer)を区別する場合のみです。
69: NULL_POINTER_WHILE_GETTING_VALUE_THRU_ INSTANCE_VARIABLE_ACCESSOR
原因: オブジェクトは、Javaリフレクションを通じてインスタンス変数の値を取得するためにアクセスされます。この例外は、一部のJVMでのみスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
70: NULL_POINTER_WHILE_GETTING_VALUE_THRU_ METHOD_ACCESSOR
原因: アクセッサ取得メソッドは、Javaリフレクションを通じて属性の値を取得するために起動されます。この例外は、一部のJVMでのみスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
71: NULL_POINTER_WHILE_SETTING_VALUE_THRU_ INSTANCE_VARIABLE_ACCESSOR
原因: オブジェクトのattributeNameインスタンス変数の値を値に設定する際に、nullポインタ例外がスローされました。オブジェクトは、Javaリフレクションを通じてインスタンス変数の値を設定するためにアクセスされます。この例外は、一部のJVMでのみスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
72: NULL_POINTER_WHILE_SETTING_VALUE_THRU_ METHOD_ACCESSOR
原因: 引数argumentが指定されたオブジェクトにsetMethodNameメソッドを通じて値を設定する際に、nullポインタ例外がスローされました。アクセッサ設定メソッドは、Javaリフレクションを通じて属性の値を設定するために起動されます。この例外は、一部のJVMでのみスローされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
73: PARENT_DESCRIPTOR_NOT_SPECIFIED
原因: 親クラスのディスクリプタが見つかりません。サブクラスのディスクリプタに親ディスクリプタがありません。
処置: メソッドsetParentClass(Class parentClass)をサブクラスのディスクリプタに対してコールする必要があります。
74: PRIMARY_KEY_FIELDS_NOT_SPECIFIED
原因: このディスクリプタに主キー・フィールドが設定されていません。
処置: メソッドsetPrimaryKeyFieldName(String fieldName)またはsetPrimaryKeyFieldName(String fieldName)を使用して、主キー・フィールドの名前を追加します。
75: REFERENCE_CLASS_NOT_SPECIFIED
原因: 外部参照マッピングに参照クラスが指定されていません。
処置: メソッドsetReferenceClass(Class aClass)をコールして、参照クラスを設定します。
77: REFERENCE_DESCRIPTOR_IS_NOT_AGGREGATE
原因: classNameの参照ディスクリプタは、集計ディスクリプタに設定されている必要があります。集計マッピングは常に、集計ディスクリプタを参照する必要があります。
処置: メソッドdescriptorIsAggregate()を参照ディスクリプタに対してコールします。
78: REFERENCE_KEY_FIELD_NOT_PROPERLY_SPECIFIED
原因: 参照フィールドの表は参照表であることが必要です。ダイレクト・コレクション・マッピングに指定された参照フィールド名が表名で修飾されている場合、表名は参照表の名前と一致している必要があります。
処置: 正しい名前でフィールドを修飾するか、参照表の名前を変更します。
79: REFERENCE_TABLE_NOT_SPECIFIED
原因: ダイレクト・コレクション・マッピング内の参照表の名前が指定されていません。
処置: メソッドsetReferenceTableName(String tableName)をマッピングに対して使用し、表名を設定します。
80: RELATION_KEY_FIELD_NOT_PROPERLY_SPECIFIED
原因: リレーション・キー・フィールドの表はリレーション表であることが必要です。多対多マッピングに指定されたソースとターゲットのリレーション・フィールド名が表名で修飾されている場合、表名はリレーション表の名前と一致している必要があります。
処置: 正しい名前でフィールドを修飾するか、リレーション表の名前を変更します。
81: RETURN_TYPE_IN_GET_ATTRIBUTE_ACCESSOR
原因: トランスフォーメーション・マッピングに指定されたメソッドattributeMethodNameは、データベース行からの値の抽出に使用されるため、属性に戻りタイプを設定しておく必要があります。
処置: メソッドを確認し、適切な変更を加えます。
82: SECURITY_ON_FIND_METHOD
原因: DescriptorEventが引数として指定されているディスクリプタ・コールバック・メソッドselectorにアクセスできません。Javaリフレクションを使用してメソッド名からMethodタイプが作成されるときに、Javaがセキュリティ例外をスローします。このメソッドは、DescriptorEventをパラメータとしてとるドメイン・オブジェクトに対するディスクリプタ・イベント・コールバックです。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
83: SECURITY_ON_FIND_OBSOLETE_METHOD
原因: sessionが引数として指定されているディスクリプタ・コールバック・メソッドselectorにアクセスできません。Javaリフレクションを使用してメソッド名からMethodタイプが作成されるときに、Javaがセキュリティ例外をスローします。このメソッドは、クラスとセッションをパラメータとしてとるドメイン・オブジェクトに対するディスクリプタ・イベント・コールバックです。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
84: SECURITY_ON_INITIALIZING_ATTRIBUTE_METHOD
原因: パラメータdatabaseRowまたはddatabaseRow, Sessionを指定したメソッドattributeMethodNameへのアクセスが拒否されました。Javaリフレクションを使用して属性メソッド名からMethodタイプが作成されるときに、Javaがセキュリティ例外をスローします。トランスフォーメーション・マッピングに指定された属性メソッドは、データベース行からの値の抽出に使用され、setAttributeTransformation(String methodName)のコールによって設定されます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
85: SECURITY_WHILE_CONVERTING_TO_METHOD
原因: シグネチャmethodName()またはmethodName(oracle.toplink.sessions.Session)を持つメソッドが見つかりませんでした。Javaリフレクションを使用してメソッド名からMethodタイプが作成されるときに、Javaがセキュリティ例外をスローします。これは、トランスフォーメーション・マッピングのドメイン・オブジェクトからフィールド値を抽出するメソッドです。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
86: SECURITY_WHILE_INITIALIZING_ATTRIBUTES_IN_INSTANCE_VARIABLE_ACCESSOR
原因: クラスjavaClassNameのインスタンス変数attributeNameへのアクセスが拒否されました。Javaリフレクションを使用して、指定された属性名からFieldタイプを作成するときに、Javaがセキュリティ例外をスローします。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
87: SECURITY_WHILE_INITIALIZING_ATTRIBUTES_IN_ METHOD_ACCESSOR
原因: オブジェクトjavaClassNameのメソッドsetMethodNameおよびgetMethodNameにアクセスできません。Javaリフレクションを使用して、指定された属性アクセッサ・メソッド名からMethodタイプを作成するときに、Javaがセキュリティ例外をスローします。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
88: SECURITY_WHILE_INITIALIZING_CLASS_ EXTRACTION_METHOD
原因: DatabaseRowが引数として指定されているstaticクラス抽出メソッドmethodNameにアクセスできません。Javaリフレクションを使用して、指定されたクラス抽出メソッド名からMethodタイプを作成するときに、Javaがセキュリティ例外をスローします。このメソッドは、継承ポリシー内のデータベース行からクラスを抽出するために使用されます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
89: SECURITY_WHILE_INITIALIZING_COPY_POLICY
原因: 引数の指定されていないクローン・メソッドmethodNameにアクセスできません。Javaリフレクションを使用して、指定されたメソッド名からMethodタイプを作成するときに、Javaがセキュリティ例外をスローします。このコピー・ポリシーに対するメソッドは、ドメイン・オブジェクトのクローンの作成に使用されます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
90: SECURITY_WHILE_INITIALIZING_INSTANTIATION_POLICY
原因: 引数の指定されていないインスタンス作成メソッドmethodNameにアクセスできません。Javaリフレクションを使用して、指定されたメソッド名からメソッド・タイプを作成するときに、Javaがセキュリティ例外をスローします。このインスタンス化ポリシーに対するメソッドは、ドメイン・オブジェクトの新規インスタンスの作成に使用されます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
91: SEQUENCE_NUMBER_PROPERTY_NOT_SPECIFIED
原因: 順序フィールド名または順序番号名がありません。順序から生成されたIDを使用するには、順序番号名と順序フィールド名の両方のプロパティを設定する必要があります。
処置: 順序から生成されたIDを使用するには、順序番号名と順序フィールド名の両方のプロパティを設定します。
92: SIZE_MISMATCH_OF_FOREIGN_KEYS
原因: 1対1マッピングにおいて、ターゲット表の主キーのサイズがソース表の外部キーのサイズに一致しません。
処置: マッピングと参照ディスクリプタの主キーを確認します。
93: TABLE_NOT_PRESENT
原因: tableNameがディスクリプタに存在しません。
処置: 表名で修飾されているフィールドが正しい表を参照するよう、マッピングとディスクリプタに指定されている修飾フィールド名を確認します。
94: TABLE_NOT_SPECIFIED
原因: ディスクリプタに表が指定されていません。ディスクリプタには、表名を定義する必要があります。
処置: メソッドaddTableName(String tableName)またはsetTableName(String tableName)をコールして、ディスクリプタに表を設定します。
96: TARGET_FOREIGN_KEYS_SIZE_MISMATCH
原因: 1対多マッピングにおいて、ターゲット表の外部キーのサイズがソース表のソース・キーのサイズに一致しません。
処置: マッピングを確認します。
97: TARGET_INVOCATION_WHILE_CLONING
原因: OracleAS TopLinkで、オブジェクトdomainObjectのクローン・メソッドのクローン化に関する問題が発生しました。methodNameが例外をトリガーしました。オブジェクトのクローン化中にクローン・オブジェクトが起動されると、このJava例外がスローされます。クローン・メソッドは、通常、作業ユニットでのクローン作成のために起動されるコピー・ポリシーで指定されます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
98: TARGET_INVOCATION_WHILE_EVENT_EXECUTION
原因: DescriptorEventが引数として指定されているディスクリプタ・コールバック・メソッドeventMethodNameにアクセスできません。この例外は、ディスクリプタ・イベント・メソッドがJavaリフレクションを使用して起動されたときに発生します。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
99: TARGET_INVOCATION_WHILE_GETTING_VALUE_THRU_METHOD_ACCESSOR
原因: オブジェクトobjectNameに対するメソッドmethodNameが例外をスローしています。メソッド・アクセッサを通じてオブジェクトから属性値を取得する際に、Javaが例外をスローしています。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
100: TARGET_INVOCATION_WHILE_INSTANTIATING_METHOD_BASED_PROXY
原因: メソッドが例外をスローしました。メソッド・ベースのプロキシのインスタンス化中、およびトランスフォーメーション・マッピングのインスタンス化中に、Javaがこの例外をスローします。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
101: TARGET_INVOCATION_WHILE_INVOKING_ATTRIBUTE_METHOD
原因: 基礎となるメソッドが例外をスローします。トランスフォーメーション・マッピングに対して属性変換メソッドを起動する際に、Javaが例外をスローしています。このメソッドは、ドメイン・オブジェクトに設定する値をデータベース行から抽出するために起動されます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
102: TARGET_INVOCATION_WHILE_INVOKING_FIELD_TO_METHOD
原因: メソッドmethodNameが例外をスローしています。トランスフォーメーション・マッピングに対してフィールド変換メソッドを起動する際に、Javaが例外をスローしています。このメソッドは、データベース行に設定する値をドメイン・オブジェクトから抽出するために起動されます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
103: TARGET_INVOCATION_WHILE_INVOKING_ROW_ EXTRACTION_METHOD
原因: OracleAS TopLinkがクラス抽出メソッドの起動中に行rowからクラス・タイプを抽出しようとして問題が発生しました。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
104: TARGET_INVOCATION_WHILE_METHOD_INSTANTIATION
原因: OracleAS TopLinkが新規インスタンスを作成できません。作成メソッドmethodNameが例外の原因です。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
105: TARGET_INVOCATION_WHILE_OBSOLETE_EVENT_EXECUTION
原因: sessionが引数として指定された、基礎となるディスクリプタ・コールバック・メソッドeventMethodNameが、例外をスローします。セッションをパラメータとしてとるディスクリプタ・イベント・メソッドの起動中に、Javaが例外をスローしています。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
106: TARGET_INVOCATION_WHILE_SETTING_VALUE_THRU_METHOD_ACESSOR
原因: オブジェクトに対するメソッドsetMethodNameが例外をスローします。アクセッサ設定メソッドをドメイン・オブジェクトに対して起動し、属性値をドメイン・オブジェクトに設定する際に、Javaが例外をスローしています。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
108: VALUE_NOT_FOUND_IN_CLASS_INDICATOR_MAPPING
原因: クラスの親ディスクリプタ内のクラス・インジケータ・マッピングに、インジケータ値が見つかりません。
処置: 継承ポリシーに対するaddClassIndicator(Class childClass, Object typeValue)を確認します。
109: WRITE_LOCK_FIELD_IN_CHILD_DESCRIPTOR
原因: 子ディスクリプタに書込みロック・フィールドが定義されています。子ディスクリプタは必要なロックを親ディスクリプタから継承するため、これは不要です。
処置: 子ディスクリプタをチェックし、フィールドを削除します。
110: DESCRIPTOR_IS_MISSING
原因: 参照クラスclassNameのディスクリプタがマッピング内にありません。
処置: セッションをチェックし、参照クラスのディスクリプタが追加されたことを確認します。
111: MULTIPLE_TABLE_PRIMARY_KEY_MUST_BE_FULLY_QUALIFIED
原因: 複数表の主キー・フィールド名が完全に修飾されていません。これらのフィールド名は、ディスクリプタに複数の表が存在する場合に、ディスクリプタに指定されます。
処置: 表名を使用してフィールド名を指定します。
112: ONLY_ONE_TABLE_CAN_BE_ADDED_WITH_THIS_METHOD
原因: このメソッドによって複数の表を入力しようとしました。
処置: 複数の表をディスクリプタに追加するには、メソッドaddTableName(String tableName)を使用します。
113: NULL_POINTER_WHILE_CONSTRUCTOR_INSTANTIATION
原因: コンストラクタにアクセスできません。デフォルト・コンストラクタを起動してドメイン・オブジェクトの新規インスタンスを作成する際に、Javaがこの例外をスローしています。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
114: NULL_POINTER_WHILE_METHOD_INSTANTIATION
原因: 新規インスタンスのmethodName作成メソッドにアクセスできません。メソッドをコールしてドメイン・オブジェクトの新規インスタンスを作成する際に、Javaが例外をスローしています。このメソッドは、クラス・コンストラクタを通じて新規インスタンス作成のデフォルト動作をオーバーライドするために、ユーザーが指定します。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
115: NO_ATTRIBUTE_VALUE_CONVERSION_TO_FIELD_VALUE_PROVIDED
原因: オブジェクト・タイプ・マッピングに属性値attributeValueのフィールド変換値が指定されていませんでした。
処置: 属性値を確認し、対応するフィールド値をマッピングに指定します。
116: NO_FIELD_VALUE_CONVERSION_TO_ATTRIBUTE_VALUE_PROVIDED
原因: オブジェクト・タイプ・マッピングにfieldValueの属性変換値が指定されていませんでした。
処置: 属性値を確認し、対応するフィールド値をマッピングに指定します。
118: LOCK_MAPPING_CANNOT_BE_READONLY
原因: ドメイン・オブジェクトclassNameは、バージョン値がオブジェクトに格納されている場合に、書込みロック・フィールドに対する読取り専用マッピングを持つことができません。
処置: 書込みロック・フィールドのマッピングを確認します。
119: LOCK_MAPPING_MUST_BE_READONLY
原因: ドメイン・オブジェクトclassNameは、バージョン値がキャッシュに格納されている場合に、書込みロック・フィールドに対する読取り専用マッピングを持ちません。
処置: 書込みロック・フィールドのマッピングを確認します。
120: CHILD_DOES_NOT_DEFINE_ABSTRACT_QUERY_KEY
原因: 問合せキーqueryKeyNameが親ディスクリプタには定義されていますが、子ディスクリプタに定義されていません。ディスクリプタに抽象問合せキーが定義されていません。
処置: インタフェース・ディスクリプタの抽象問合せキーにより、インタフェースを実装するクラスを定義します。
122: SET_EXISTENCE_CHECKING_NOT_UNDERSTOOD
原因: インタフェース・ディスクリプタparentに少なくとも1つの抽象問合せキーが定義されていません。メソッドsetExistenceChecking(String token)に指定された文字列が認識されません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
125: VALUE_HOLDER_INSTANTIATION_MISMATCH
原因: 属性mapping.getAttributeName()のマッピングがインダイレクションを使用しています。このマッピングは、新規ValueHolderに対して初期化されている必要があります。
処置: マッピングでインダイレクションを使用していること、および属性が新規ValueHolderに対して初期化されていることを確認します。
126: NO_SUB_CLASS_MATCH
原因: 集計リレーションシップ・マッピングでの継承の場合に、このクラスtheClassに一致するサブクラスがありません。
処置: サブクラスとリレーションシップ・マッピングを確認します。
127: RETURN_AND_MAPPING_WITH_INDIRECTION_MISMATCH
原因: 属性mapping.getAttributeName()に対するgetメソッドの戻りタイプがタイプValueHolderInterfaceとして宣言されていませんが、マッピングではインダイレクションを使用しています。
処置: getメソッドがValueHolderを返すことを確認するか、インダイレクションを使用しないようにマッピングを変更します。
128: RETURN_AND_MAPPING_WITHOUT_INDIRECTION_MISMATCH
原因: 属性mapping.getAttributeName()に対するgetメソッドの戻りタイプがタイプValueHolderInterfaceとして宣言されていますが、マッピングではインダイレクションを使用していません。
処置: マッピングでインダイレクションを使用していることを確認するか、ValueHolderからの戻りタイプを変更します。
129: PARAMETER_AND_MAPPING_WITH_INDIRECTION_MISMATCH
原因: 属性mapping.getAttributeName()に対するsetメソッドのパラメータ・タイプがタイプValueHolderInterfaceとして宣言されていませんが、マッピングではインダイレクションを使用しています。
処置: setメソッドのパラメータがValueHolderとして宣言されていることを確認するか、インダイレクションを使用しないようにマッピングを変更します。
130: PARAMETER_AND_MAPPING_WITHOUT_INDIRECTION_MISMATCH
原因: 属性mapping.getAttributeName()に対するsetメソッドのパラメータ・タイプがタイプValueHolderInterfaceとして宣言されていますが、マッピングではインダイレクションを使用していません。
処置: インダイレクションを使用するようにマッピングが変更されていること、またはsetメソッドのパラメータがValueHolderとして宣言されていないことを確認します。
131: GET_METHOD_RETURN_TYPE_NOT_VALID
原因: 属性mapping.getAttributeName()に対するgetメソッドの戻りタイプがVectorタイプ(Java 2を使用している場合にMapまたはCollectionを実装するタイプ)として宣言されていません。
処置: 処置: その属性に対するgetメソッドの戻りタイプをVectorタイプ(Java 2を使用している場合にMapまたはCollectionインタフェースを実装するタイプ)として宣言します。
133: SET_METHOD_PARAMETER_TYPE_NOT_VALID
原因: 属性mapping.getAttributeName()に対するsetメソッドのパラメータ・タイプがVectorタイプ(Java 2を使用している場合にMapまたはCollectionを実装するタイプ)として宣言されていません。
処置: その属性に対するsetメソッドのパラメータ・タイプをVectorタイプ(Java 2を使用している場合にMapまたはCollectionインタフェースを実装するタイプ)として宣言します。
135: ILLEGAL_TABLE_NAME_IN_MULTIPLE_TABLE_FOREIGN_KEY
原因: 複数表の外部キー・リレーションシップの表名が不明です。
処置: 表名を確認します。
138: ATTRIBUTE_AND_MAPPING_WITH_TRANSPARENT_INDIRECTION_MISMATCH
原因: 属性mapping.getAttributeName()validTypeNameのスーパータイプとして宣言されていませんが、マッピングでは透過インダイレクションを使用しています。
処置: 属性のタイプとマッピングの設定を確認します。
139: RETURN_AND_MAPPING_WITH_TRANSPARENT_INDIRECTION_MISMATCH
原因: 属性mapping.getAttributeName()に対するgetメソッドの戻りタイプがvalidTypeNameのスーパータイプとして宣言されていませんが、マッピングでは透過インダイレクションを使用しています。
処置: 属性のタイプとマッピングの設定を確認します。
140: PARAMETER_AND_MAPPING_WITH_TRANSPARENT_ INDIRECTION_MISMATCH
原因: 属性mapping.getAttributeName()に対するsetメソッドのパラメータ・タイプがvalidTypeNameのスーパータイプとして宣言されていませんが、マッピングでは透過インダイレクションを使用しています。
処置: 属性のタイプとマッピングの設定を確認します。
141: FIELD_IS_NOT_PRESENT_IN_DATABASE
原因: フィールドfieldnameがデータベース内の表tableNameに存在しません。
処置: 属性のフィールド名を確認します。
142: TABLE_IS_NOT_PRESENT_IN_DATABASE
原因: descriptor.getTableName()メソッドにより名前が提供された表がデータベースに存在しません。
処置: ディスクリプタの表名を確認します。
143: MULTIPLE_TABLE_INSERT_ORDER_MISMATCH
原因: 指定した複数表の挿入順序VectorのaDescriptor.getMultipleTableInsertOrder()が、ディスクリプタaDescriptor.getTables()に指定された数よりも多い、または少ない表を保持しています。すべての表が挿入順序Vectorに含まれている必要があります。
処置: ディスクリプタの表名がすべて存在し、余分な表がないことを確認します。
144: INVALID_USE_OF_TRANSPARENT_INDIRECTION
原因: 透過インダイレクションがCollectionMappings以外のマッピングで使用されています。
処置: マッピングを確認します。マッピングはコレクション・マッピングであることが必要です。
145: MISSING_INDIRECT_CONTAINER_CONSTRUCTOR
原因: インダイレクト・コンテナ・クラスがコンストラクタを実装していません。
処置: コンテナのコンストラクタを実装します。
146: COULD_NOT_INSTANTIATE_INDIRECT_CONTAINER_CLASS
原因: OracleAS TopLinkがコンストラクタを使用してインダイレクト・コンテナ・クラスをインスタンス化できません。
処置: インダイレクト・コンテナ・クラスのコンストラクタを検証します。
147: INVALID_CONTAINER_POLICY
原因: コンテナ・ポリシーを互換性のないバージョンのJDKで使用しました。このコンテナ・ポリシーは、JDK 1.4.1以上でのみ使用してください。
処置: 使用されているコンテナ・ポリシーを検証します。
148: INVALID_CONTAINER_POLICY_WITH_TRANSPARENT_ INDIRECTION
原因: コンテナ・ポリシーと透過インダイレクションに互換性がありません。
処置: 透過インダイレクションと互換性を持つようにコンテナ・ポリシーを変更するか、透過インダイレクションの使用をやめます。
149: INVALID_USE_OF_NO_INDIRECTION
原因: NoIndirectionPolicyオブジェクトでは、このメッセージが表示されることはありません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
150: INDIRECT_CONTAINER_INSTANTIATION_MISMATCH
原因: 属性mapping.getAttributeName()のマッピングが透過インダイレクションを使用しています。このマッピングは、適切なコンテナに対して初期化されている必要があります。
処置: 適切なコンテナへのマッピングを初期化します。
151: INVALID_MAPPING_OPERATION
原因: 無効なマッピング操作が使用されました。
処置: 有効なマッピング操作については、ドキュメントを参照してください。
152: INVALID_INDIRECTION_POLICY_OPERATION
原因: 無効なインダイレクション・ポリシー操作が使用されました。
処置: 有効なインダイレクション・ポリシー操作については、ドキュメントを参照してください。
153: REFERENCE_DESCRIPTOR_IS_NOT_AGGREGATECOLLECTION
原因: classNameの参照ディスクリプタが集計コレクション・ディスクリプタに設定されていません。
処置: 参照ディスクリプタを集計コレクション・ディスクリプタに設定します。
154: INVALID_INDIRECTION_CONTAINER_CLASS
原因: 無効なインダイレクション・コンテナ・クラスが使用されました。
処置: コンテナ・クラスを確認します。
155: MISSING_FOREIGN_KEY_TRANSLATION
原因: マッピングが、主キー・フィールドにリンクされている外部キー・フィールドを含んでいません。
処置: 外部キーを適切な主キーにリンクします。
156: STRUCTURE_NAME_NOT_SET_IN_MAPPING
原因: 構造名が設定されていません。
処置: 適宜、構造名を設定します。
157: NORMAL_DESCRIPTORS_DO_NOT_SUPPORT_NON_RELATIONAL_EXTENSIONS
原因: リレーショナル・ディスクリプタは非リレーショナル拡張機能をサポートしません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
158: PARENT_CLASS_IS_SELF
原因: ディスクリプタの親クラスがそれ自身に設定されています。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
159: PROXY_INDIRECTION_NOT_AVAILABLE
原因: プロキシ・インダイレクションの使用を試みましたが、JDK 1.3.1以上が使用されていません。
処置: JDK 1.4.1以上を使用します。
160: INVALID_ATTRIBUTE_TYPE_FOR_PROXY_INDIRECTION
原因: プロキシ・インダイレクションを使用するために指定したインタフェース・リストに、属性が指定されていませんでした。
処置: 属性を確認します。
161: INVALID_GET_RETURN_TYPE_FOR _PROXY_INDIRECTION
原因: インダイレクション・ポリシーの戻りタイプが、インダイレクション・ポリシーに対して無効です。
処置: 属性のgetメソッドのパラメータ・タイプがインダイレクション・ポリシーに対して正しいことを確認します。
162: INVALID_SET_PARAMETER_TYPE_FOR_PROXY_ INDIRECTION
原因: setメソッドのパラメータがインダイレクション・タイプに対して正しくありません。
処置: 属性のsetメソッドのパラメータ・タイプがインダイレクション・ポリシーに対して正しいことを確認します。
163: INCORRECT_COLLECTION_POLICY
原因: コンテナ・ポリシーがコレクション・タイプに対して無効です。
処置: コンテナ・ポリシーがコレクション・タイプに対して正しいことを確認します。
164: INVALID_AMENDMENT_METHOD
原因: 指定した修正メソッドが無効か、publicでないか、見つかりません。
処置: 修正メソッドがpublicかつstaticで、voidを返し、引数Descriptorを1つとることを確認します。
165: ERROR_OCCURRED_IN_AMENDMENT_METHOD
原因: 指定した修正メソッドが例外をスローしました。
処置: 返された例外を調べて、詳しい情報を得ます。
166: VARIABLE_ONE_TO_ONE_MAPPING_IS_NOT_DEFINED
原因: 属性に対するマッピングがありません。
処置: マッピングと属性を検証します。
168: TARGET_INVOCATION_WHILE_CONSTRUCTOR_INSTANTIATION
原因: コンストラクタがありません。
処置: 必要なコンストラクタを作成します。
169: TARGET_INVOCATION_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
原因: コンストラクタがありません。
処置: 必要なコンストラクタを作成します。
170: ILLEGAL_ACCESS_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
原因: パーミッションがコンストラクタへのアクセスを許可していません。
処置: Javaセキュリティ・パーミッションを調整し、コンストラクタへのアクセスを許可します。
171: INSTANTIATION_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
原因: インスタンス化が関連コンストラクタ内で失敗しました。
処置: インスタンス化の対象となっているオブジェトを特定し、すべてのオブジェクトが正しくインスタンス化されたことを確認します。
172: NO_SUCH_METHOD_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
原因: メソッドが存在しないため、コンストラクタ内から起動されたメッセージ送信は無効です。
処置: メッセージ送信を修正し、メソッドが存在することを確認します。
173: NULL_POINTER_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
原因: メッセージがコンストラクタ内からnullのオブジェクトに対して送信されました。
処置: 内部例外を調べ、適切な処置を行います。
174: ILLEGAL_ACCESS_WHILE_METHOD_ INSTANTIATION_OF_FACTORY
原因: ファクトリのインスタンス化の中からオブジェクトに対してメッセージが送信され、このメッセージはJavaにより無効であると判断されました。
処置: 送信されたメッセージが無効である理由を特定し、そのメッセージを有効なメッセージに置き換えます。
175: TARGET_INVOCATION_WHILE_METHOD_ INSTANTIATION_OF_FACTORY
原因: 作成メソッドを使用してファクトリを作成中に問題が発生しました。作成メソッドが例外をトリガーしました。
処置: 例外を調べ、対応する処置を行います。
176: NULL_POINTER_WHILE_METHOD_ INSTANTIATION_OF_FACTORY
原因: ファクトリをインスタンス化するためにコールされたメソッドが、nullポインタ例外をスローしました。作成メソッドにアクセスできません。
処置: そのメッセージを使用してファクトリをインスタンス化しないでください。
177: NO_MAPPING_FOR_ATTRIBUTENAME
原因: 属性に対するマッピングがありません。
処置: 属性をマップする必要があります。
178: NO_MAPPING_FOR_ATTRIBUTENAME_IN_ENTITY_BEAN
原因: エンティティBean内に属性に対するマッピングが見つかりません。
処置: 属性をマップする必要があります。
179: UNSUPPORTED_TYPE_FOR_BIDIRECTIONAL_RELATIONSHIP_MAINTENANCE
原因: 属性は双方向リレーションシップ維持を使用しますが、これをサポートしないContainerPolicyが含まれています。
処置:

ビルダー例外(1001〜1042)

ビルダー例外は、ディスクリプタのビルダー・ファイルの書式が正しい状態にない場合に発生する開発例外です。例C-2に示すように、OracleAS TopLinkで、例外の原因となったディスクリプタ・ファイルのソースと行番号を特定できる場合は、表示されるメッセージにその情報が含まれます。特定できない場合、その情報はエラー・メッセージに表示されません。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message
SOURCE: The source to the descriptor file that caused the error.
LINE NUMBER: The line number that caused the exception to be raised. This is the line number in the descriptor file.

例C-2 ビルダー例外

EXCEPTION [TOPLINK - 1038]: oracle.toplink.tools.builderreader.BuilderException
EXCEPTION DESCRIPTION: No such section token: ABC

並行性例外(2001〜2006)

並行性例外は、Java並行性に違反した場合に発生する開発例外です。例C-3に示すように、実行中のスレッドが中断されてJVMがInterruptedExceptionをスローした場合にのみ、内部例外情報がエラー・メッセージとともに表示されます。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message

例C-3 並行性例外

EXCEPTION [TOPLINK – 2004]: oracle.toplink.exceptions.ConcurrencyException
EXCEPTION DESCRIPTION: Signal attempted before wait on concurrency manager.
This normally means that an attempt was made to commit or roll back a transaction before being started, or rolledback twice.

2001: WAIT_WAS_INTERRUPTED
原因: マルチスレッド環境で、待機中のスレッドのいずれかが中断されました。
処置: このような例外は、アプリケーションに依存します。
2002: WAIT_FAILURE_SERVER
原因: 接続プール内の接続に対するリクエストが強制的に待機となり、その待機が中断されました。
処置: このような例外は、アプリケーションに依存します。
2003: WAIT_FAILURE_CLIENT
原因: 接続プール内の接続に対するリクエストが強制的に待機となり、その待機が中断されました。
処置: このような例外は、アプリケーションに依存します。
2004: SIGNAL_ATTEMPTED_BEFORE_WAIT
原因: 並行性マネージャの待機の前にシグナル実行が試行されました。通常、これはトランザクションの開始前にトランザクションのコミットまたはロールバックが試行されたか、トランザクションのロールバックが2回試行されたことを意味します。
処置: アプリケーションのトランザクションを確認します。
2005: WAIT_FAILURE_SEQ_DATABASE_SESSION
原因: DatabaseSessionの順序付けで別の接続が使用可能になるのを待機中に、InterruptedExceptionがスローされました。
処置: DatabaseSessionでのオブジェクト作成に関係する並行性の問題を調べます。
2006: SEQUENCING_MULTITHREAD_THRU_CONNECTION
原因: 複数のスレッドが、同じDatabaseSessionまたはClientSessionから同時にシーケンス・オブジェクトを取得しようとしました。
処置: 同じDatabaseSessionまたはClientSessionを使用して書込みが同時に行われないようにします。

変換例外(3001〜3007)

変換例外は、互換性のないタイプの変換によって変換エラーが起こった場合に発生する開発例外です。例C-4に示すように、返されるメッセージは、どのタイプ・キャストが例外の原因となったかを示します。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message

例C-4 変換例外

EXCEPTION [TOPLINK – 3006]: oracle.toplink.exceptions.ConversionException
EXCEPTION DESCRIPTION: object must be of even length to be converted to a ByteArray

3001: COULD_NOT_BE_CONVERTED
原因: クラスobjectClassのオブジェクトobjectjavaClassに変換できません。オブジェクトを特定のタイプに変換できません。
処置: 変換対象のオブジェクトのタイプが正しいことを確認します。
3003: INCORRECT_DATE_FORMAT
原因: dateStringの日付書式が正しくありません。正しい書式はYYYY-MM-DDです。
処置: 日付書式を確認します。
3004: INCORRECT_TIME_FORMAT
原因: timeStringの時間書式が正しくありません。正しい書式はHH:MM:SSです。
処置: 時間書式を確認します。
3005: INCORRECT_TIMESTAMP_FORMAT
原因: timestampStringのタイムスタンプ書式が正しくありません。正しい書式はYYYY-MM-DD HH:MM:SS.NNNNNNNNNです。
処置: タイムスタンプ書式を確認します。
3006: COULD_NOT_CONVERT_TO_BYTE_ARRAY
原因: StringオブジェクトをByteArrayに変換するには、長さが均一であることが必要です。このオブジェクトはByteArrayに変換できません。
処置: 変換対象のオブジェクトを確認します。
3007: COULD_NOT_BE_CONVERTED_TO_CLASS
原因: クラスobjectClassのオブジェクトobjectjavaClassに変換できません。クラスjavaClassがクラスパスにありません。
処置: クラスjavaClassがクラスパスにあることを確認します。

データベース例外(4002〜4018)

データベース例外は、データベースから読み取られたデータ、またはデータベースに書き込まれるデータが正しくない場合に発生する実行時例外です。この例外は、SQLExceptionのラッパーとしても機能します。例C-5に示すように、この場合、メッセージにはエラー・コードとエラー・メッセージが含まれます。この例外は、どのデータベース・タイプ操作でも発生する可能性があります。

この例外がSQLExceptionをラップしている場合、内部例外とエラー・コード情報を含みます。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message
ERROR CODE: Error code

例C-5 データベース例外

EXCEPTION [TOPLINK – 4002]: oracle.toplink.exceptions.DatabaseExceptions
EXCEPTION DESCRIPTION: java.sql.SQLException: [INTERSOLV][ODBC dBase driver] Incompatible datatypes in expression: >
INTERNAL EXCEPTION: java.sql.SQLException: [INTERSOLV][ODBC dBase driver] Incompatible datatypes in expression: >
ERROR CODE: 3924

4002: SQL_EXCEPTION
原因: SQL例外が発生し、基礎となるJDBCブリッジによってスローされました。OracleAS TopLinkでは、その例外のみがラップされます。
処置: スローされた内部例外を調べます。
4003: CONFIGURATION_ERROR_CLASS_NOT_FOUND
原因: ドライバ・クラス名が見つかりませんでした。
処置: JDBCLoginに指定されたクラス名を確認します。
4005: DATABASE_ACCESSOR_NOT_CONNECTED
原因: データベースに対する読取りまたは書込みの試行中に、セッションがデータベースに接続されていません。
処置: データベースへの接続が失われた可能性があるため、アプリケーションが再度ログインする必要があります。
4006: ERROR_READING_BLOB_DATA
原因: データベースからBLOBデータを読み取る際にエラーが発生しました。この例外の原因として、BLOBデータが結果セットから正しく読み取られなかった、OracleAS TopLinkがByteArrayOutputStreamを使用してBLOBデータを処理できない、という2つのことが考えられます。
処置: 基礎となるドライバがBLOBを正しくサポートしているかどうかを確認します。正しくサポートしている場合は、オラクル社カスタマ・サポート・センターにこの問題を報告してください。
4007: COULD_NOT_CONVERT_OBJECT_TYPE
原因: 内部エラーerror.java.sql.TYPES = typeでオブジェクト・タイプを変換できません。結果セットのオブジェクトを、メタデータ情報から返されたタイプに変換できません。
処置: 基礎となるドライバが変換タイプを正しくサポートしているかどうかを確認します。正しくサポートしている場合は、オラクル社カスタマ・サポート・センターにこの問題を報告してください。
4008: LOGOUT_WHILE_TRANSACTION_IN_PROGRESS
原因: トランザクションが進行中にログアウトしようとしました。トランザクションが進行中はログアウトできません。
処置: トランザクションが完了するまで待ちます。
4009: SEQUENCE_TABLE_INFORMATION_NOT_COMPLETE
原因: OracleAS TopLinkに対して指定した順序情報が十分ではないため、データベースから順序番号のセットを取得できません。通常、これはOracleデータベースでのネイティブ順序付け中に発生します。順序付けの詳細は、第3章「マッピング」「順序付け」を参照してください。
処置: 指定したデータ、特にOracleAS TopLinkで指定した順序名を確認します。
4011: ERROR_PREALLOCATING_SEQUENCE_NUMBERS
原因: データベース上で順序番号を事前割当てする際にエラーが発生しました。順序表情報が完全ではありません。
処置: 順序表がデータベース上に正しく作成されたことを確認します。
4014: CANNOT_REGISTER_SYNCHRONIZATIONLISTENER_FOR_UNITOFWORK
原因: OracleAS TopLinkは同期リスナーunderlying_exception_stringを登録できません。OracleAS TopLinkセッションがExternalTransactionControllerを使用して構成されている場合、クライアントが要求する作業ユニットは、JTS外部グローバル・トランザクションのコンテキスト内で動作する必要があります。作業ユニットが作成されたが外部グローバル・トランザクションが存在しない場合、またはシステムが外部グローバル・トランザクションへの参照を取得できない場合に、このエラーが報告されます。
処置: 作業ユニットを取得する前に、JTSトランザクションが進行中であることを確認します。
4015: SYNCHRONIZED_UNITOFWORK_DOES_NOT_ SUPPORT_COMMITANDRESUME
原因: 同期化されたUnitOfWorkは、commitAndResume操作をサポートしません。OracleAS TopLinkセッションがExternalTransactionControllerを使用して構成されている場合、クライアントが要求する作業ユニットは、JTS外部グローバル・トランザクションのコンテキスト内で動作する必要があります(「4014: CANNOT_REGISTER_SYNCHRONIZATIONLISTENER_FOR_UNITOFWORK」を参照)。JTS仕様では、トランザクションを指すチェックという概念がサポートされていません。つまり、実行した処理をコミットした後、同じトランザクション・コンテキスト内で処理を継続します。JTSでは、ネストしたトランザクションもサポートされていません。そのため、同期化された作業ユニットに対してクライアント・コードがcommitAndResume()を起動すると、このエラーが報告されます。
処置: 不要です。
4016: CONFIGURATION_ERROR_NEW_INSTANCE_INSTANTIATION_EXCEPTION
原因: OracleAS TopLinkが指定のドライバ・クラスをインスタンス化しようとしたときに、構成エラーが発生しました。TopLinkでは、ドライバをインスタンス化できません。
処置: ドライバをチェックします。
4017: CONFIGURATION_ERROR_NEW_INSTANCE_ILLEGAL_ ACCESS_EXCEPTION
原因: OracleAS TopLinkが指定のドライバ・クラスをインスタンス化しようとしたときに、構成エラーが発生しました。TopLinkでは、ドライバをインスタンス化できません。
処置: ドライバをチェックします。
4018: TRANSACTION_MANAGER_NOT_SET_FOR_JTS_DRIVER
原因: JTSSynchronizationListenerのトランザクション・マネージャが設定されていません。
処置: JTSSynchronizationListenerのトランザクション・マネージャを設定します。

オプティミスティック・ロック例外(5001〜5008)

オプティミスティック・ロック例外は、目的のオブジェクトに一致する行がデータベース上にない場合や、データベース上の値が登録済の数値に一致しない場合に発生する、実行時例外です。この例外は、オプティミスティック・ロック機能と併用されます。これは、更新操作または削除操作にのみ適用されます。

オプティミスティック・ロックの詳細は、第2章「OracleAS TopLinkのアーキテクチャ」「ステートレス環境でのオプティミスティック・ロック」を参照してください。オプティミスティック・ロック例外は、try-catchブロックで処理する必要があります。

書式

EXCEPTION [TOPLINK – error code]: Exception Name
EXCEPTION DESCRIPTION: Message

例C-6 オプティミスティック・ロック例外

EXCEPTION [TOPLINK – 5003]: oracle.toplink.exceptions.OptimisticLockException
EXCEPTION DESCRIPTION: The object, object.toString() cannot be deleted because it has changed or been deleted since it was last read.

5001: NO_VERSION_NUMBER_WHEN_DELETING
原因: オブジェクトobjectを削除しようとしましたが、アイデンティティ・マップにバージョン番号がありません。このオブジェクトは一度も読み取られたことがないか、すでに削除されています。
処置: SQLロギングを使用して、例外の理由を特定します。最後の削除操作は、例外がスローされたときに削除中だったオブジェクトを示しています。
5003: OBJECT_CHANGED_SINCE_LAST_READ_WHEN_DELETING
原因: データベースでオブジェクトの状態が変化しました。オブジェクトobjectは、最後に読み取られてから変更または削除されているため、削除できません。通常、これは表内の行が他のアプリケーションによって変更されたことを意味します。
処置: オブジェクトをリフレッシュすることにより、オブジェクトをデータベースの新しいデータで更新します。
5004: NO_VERSION_NUMBER_WHEN_UPDATING
原因: オブジェクトobjectを更新しようとしましたが、アイデンティティ・マップにバージョン番号がありません。このオブジェクトは更新前に読み取られていないか、削除されている可能性があります。
処置: SQLロギングを使用して、例外の理由を特定します。最後の更新操作は、例外がスローされたときに更新中だったオブジェクトを示しています。
5006: OBJECT_CHANGED_SINCE_LAST_READ_WHEN_UPDATING
原因: データベースでオブジェクトの状態が変化しました。オブジェクトobjectは、最後に読み取られてから変更または削除されているため、更新できません。通常、これは表内の行が他のアプリケーションによって変更されたことを意味します。
処置: オブジェクトをリフレッシュすることにより、オブジェクトをデータベースの新しいデータで更新します。
5007: MUST_HAVE_MAPPING_WHEN_IN_OBJECT
原因: オブジェクトaClassには、バージョン・ロック・フィールドに対応する、読取り専用ではないマッピングが必要です。ロック値をキャッシュではなくドメイン・オブジェクトに格納する際に必要なマッピングが、ロック・フィールドに対して定義されていません。
処置: フィールドのマッピングを定義します。
5008: NEED_TO_MAP_JAVA_SQL_TIMESTAMP
原因: ドメイン・オブジェクトに格納されている書込みロック値がjava.sql.Timestampのインスタンスではありません。
処置: 属性の値をjava.sql.Timestampのインスタンスに変更します。

問合せ例外(6001〜6105)

問合せ例外は、問合せに指定した情報が不十分な場合に発生する開発例外です。例C-7に示すように、可能な場合、メッセージは例外の原因となった問合せを示します。問合せはオプションであり、OracleAS TopLinkでその例外の原因となった問合せを特定できる場合に表示されます。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
QUERY:

例C-7 問合せ例外

EXCEPTION [TOPLINK – 6026]: oracle.toplink.exceptions.QueryException
EXCEPTION DESCRIPTION: The query is not defined. When executing a query on the session, the parameter that takes query is null.

6001: ADDITIONAL_SIZE_QUERY_NOT_SPECIFIED
原因: カーソルSQL問合せでは、結果セットのサイズを取得するために追加の問合せを指定する必要があります。追加の問合せを含めないと、この例外が発生します。
処置: サイズの問合せを指定します。
6002: AGGREGATE_OBJECT_CANNOT_BE_DELETED
原因: 集計オブジェクトは、所有者と切り離して書込みや削除ができません。そのようなオブジェクトではアイデンティティが維持されません。
処置: 集計オブジェクトを直接削除しようとしないでください。
6003: ARGUMENT_SIZE_MISMATCH_IN_QUERY_AND_ QUERY_DEFINITION
原因: 実行する問合せに対して指定された引数の数と、問合せ定義で指定された引数の数が一致しません。
処置: 問合せと問合せ実行をチェックします。
6004: BACKUP_CLONE_IS_ORIGINAL_FROM_PARENT
原因: アイデンティティ・ハッシュ・コード(System.identityHashCode()) System.identityHashCode(clone)を持つクラスclone.getClass()のオブジェクトcloneは、この作業ユニット領域のものではなく、親セッションのものです。オブジェクトはこの作業ユニットには登録されず、親セッションから読み取られ、作業ユニットに登録されたオブジェクトに関連付けられます。
処置: オブジェクトが正しく登録されていることを確認します。それでも問題が発生する場合は、UnitOfWork.validateObjectSpace()メソッドを使用すると、エラーの発生箇所をデバッグできます。
6005: BACKUP_CLONE_IS_ORIGINAL_FROM_SELF
原因: アイデンティティ・ハッシュ・コード(System.identityHashCode()) <System.identityHashCode(clone)>を持つクラスclone.getClass()のオブジェクト・クローンは、登録されている新規オブジェクトの元のオブジェクトです。作業ユニットは登録されている新規オブジェクトをクローン化するため、オブジェクトが別のオブジェクトによって参照される前に、そのオブジェクトを必ず登録しておきます。新規オブジェクトをクローン化しない場合は、UnitOfWork.registerNewObject(Object) APIを使用します。
処置: オブジェクトが正しく登録されていることを確認します。それでも問題が発生する場合は、UnitOfWork.validateObjectSpace()メソッドを使用すると、エラーの発生箇所をデバッグできます。
6006: BATCH_READING_NOT_SUPPORTED
原因: このマッピングはバッチ読取りをサポートしていません。すべてのターゲット行のバッチ読取りの最適化は、このマッピングではサポートされません。
処置: この問題はOracleAS TopLinkの開発上の問題であるため、マッピングが新規カスタム・マッピングでないかぎり、ユーザーがこのエラー・コードを目にすることは考えられません。オラクル社カスタマ・サポート・センターにご連絡ください。
6007: DESCRIPTOR_IS_MISSING
原因: reference Classのディスクリプタがありません。クラスまたはオブジェクトに関連するディスクリプタがセッションに見つかりません。
処置: 関連ディスクリプタがセッションに追加されたかどうか、および問合せが正しいオブジェクトまたはクラスに対して実行されたかどうかを確認します。
6008: DESCRIPTOR_IS_MISSING_FOR_NAMED_QUERY
原因: queryNameという名前の問合せに対するディスクリプタdomain Class Nameがありません。名前付き問合せが定義されているディスクリプタが、セッションに追加されていません。
処置: 関連ディスクリプタがセッションに追加されたかどうか、および問合せが正しいクラスに対して実行されたかどうかを確認します。
6013: INCORRECT_SIZE_QUERY_FOR_CURSOR_STREAM
原因: カーソル付きストリームを返す問合せに指定したサイズ問合せが正しくありません。サイズ問合せを実行してもサイズが返されませんでした。
処置: カーソル付きストリーム問合せがカスタム問合せの場合、指定したサイズ問合せをチェックするか、オラクル社カスタマ・サポート・センターにこの問題を報告してください。
6014: INVALID_QUERY
原因: 変更問合せを使用して作業ユニットにオブジェクトを書き込むことはできません。オブジェクトが登録されている必要があります。
処置: オブジェクトは作業ユニットに登録されます。コミット時には、作業ユニットがデータベースに対して必要な変更を実行します。
6015: INVALID_QUERY_KEY_IN_EXPRESSION
原因: 問合せキーkeyが存在しません。通常、このエラーは問合せキーのスペルミスが原因で発生します。
処置: 式に指定された問合せキーをチェックし、問合せキーがディスクリプタに追加されたことを確認します。
6016: INVALID_QUERY_ON_SERVER_SESSION
原因: オブジェクトとデータベースは、サーバー・セッションでは変更できません。変更はすべて、クライアント・セッションの作業ユニットを通じて実行する必要があります。変更問合せによって、サーバー・セッションでオブジェクトを変更することはできません。オブジェクトは、このサーバー・セッションから取得されたクライアント・セッションで変更されます。
処置: クライアント・セッションの作業ユニットを使用して、オブジェクトを変更します。
6020: NO_CONCRETE_CLASS_INDICATED
原因: この行のタイプに対する具象クラスが示されていません。データベース行から読み取られたタイプ・インジケータに、タイプ・インジケータ・ハッシュ・テーブルのエントリがないか、クラス抽出メソッドが使用された場合に、具象クラスのタイプが返されませんでした。この例外は、サブクラスの読取り中にスローされます。
処置: クラス抽出メソッドを指定した場合は、そのメソッドをチェックします。または、ディスクリプタをチェックして、タイプ・インジケータ値がすべて指定されたことを確認します。
6021: NO_CURSOR_SUPPORT
原因: 式を使用する抽象クラスの複数表ディスクリプタで、カーソルがサポートされていません。
処置: カスタムSQLまたは複数の問合せの使用を検討します。
6023: OBJECT_TO_INSERT_IS_EMPTY
原因: 表に挿入するフィールドがありません。表tableに挿入するフィールドが空です。
処置: この表に対するマッピングを少なくとも1つ定義します。
6024: OBJECT_TO_MODIFY_NOT_SPECIFIED
原因: 変更問合せには、変更するオブジェクトが必要です。
処置: 問合せを実行する前に、問合せにオブジェクトが含まれていることを確認します。
6026: QUERY_NOT_DEFINED
原因: 問合せが定義されていません。セッションで問合せを実行する際に、問合せをとるパラメータがnullです。
処置: 問合せが正しく渡されていることを確認します。
6027: QUERY_SENT_TO_INACTIVE_UNIT_OF_WORK
原因: 作業ユニットは解放されており、現在非アクティブです。
処置: 一度解放した作業ユニットは、commitAndResumeをコールしないかぎり再使用できません。
6028: READ_BEYOND_QUERY
原因: カーソル付きストリームからその限界を超えて(ストリームの末尾を越えて)読み取ろうとしました。
処置: オブジェクトをさらに取得しようとする前に、ストリーム終了条件がないかどうか、必ずストリームをチェックします。
6029: REFERENCE_CLASS_MISSING
原因: 問合せの参照クラスが指定されていません。参照クラスを指定する必要があります。
処置: 問合せをチェックします。
6030: REFRESH_NOT_POSSIBLE_WITHOUT_CACHE
原因: キャッシュが設定されていない場合、リフレッシュは行えません。キャッシュをスキップしてオブジェクトを読み取る読取り問合せは、オブジェクトのリフレッシュには使用できません。アイデンティティがないと、リフレッシュは行えません。
処置: 問合せをチェックします。
6031: SIZE_ONLY_SUPPORTED_ON_EXPRESSION_QUERIES
原因: サイズ問合せが見つかりませんでした。サイズ問合せを指定しないかぎり、サイズは式問合せでしかサポートされません。
処置: カスタム問合せのカーソル付きストリームでも、サイズ問合せを定義する必要があります。
6032: SQL_STATEMENT_NOT_SET_PROPERLY
原因: SQL文の設定が適切ではありません。問合せがカスタマイズされていないかぎり、ユーザーがこのエラー・コードを目にすることは考えられません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6034: INVALID_QUERY_ITEM
原因: OracleAS TopLinkが問合せ項目式を検証できません。
処置: 使用されている式を検証します。
6041: SELECTION_OBJECT_CANNOT_BE_NULL
原因: 読取りオブジェクトまたはリフレッシュ・オブジェクトに渡された選択オブジェクトがnullでした。
処置: 読取り問合せに対するsetSelectionObject()をチェックします。
6042: UNNAMED_QUERY_ON_SESSION_BROKER
原因: データ読取り問合せおよびデータ変更問合せがセッション名なしで実行されています。問合せに名前が付いていないかぎり、セッション・ブローカで直接実行できるのはオブジェクトレベルの問合せのみです。
処置: セッション名を指定します。
6043: REPORT_RESULT_WITHOUT_PKS
原因: 主キーのないReportQueryでは、オブジェクトを読み取ることができません。返されたレポート問合せ結果に主キーの値がありません。結果からオブジェクトを作成できるのは、主キーも読み取られた場合のみです。
処置: レポート問合せに対するretrievePrimaryKeys()についてのドキュメントを参照してください。
6044: NULL_PRIMARY_KEY_IN_BUILDING_OBJECT
原因: 問合せの実行中に行databaseRowから読み取られた主キーがnullであることが検出されました。主キーにnullを含めることはできません。
処置: 問合せとデータベースの表をチェックします。
6045: NO_DESCRIPTOR_FOR_SUBCLASS
原因: サブクラスにディスクリプタが定義されていません。
処置: ディスクリプタがセッションに追加されたことを確認するか、クラス抽出メソッドをチェックします。
6046: CANNOT_DELETE_READ_ONLY_OBJECT
原因: 削除しようとしているクラスは、読取り専用クラスです。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6047: INVALID_OPERATOR
原因: 式で使用されている演算子dataが無効です。
処置: ExpressionOperatorクラスをチェックし、サポートされているすべての演算子のリストを確認します。
6048: ILLEGAL_USE_OF_GETFIELD
原因: 式におけるgetField dataの使用方法が無効です。OracleAS TopLinkのこの開発例外をユーザーが目にすることは考えられません。
処置: オラクル社カスタマ・サポート・センターにこの問題を報告してください。
6049: ILLEGAL_USE_OF_GETTABLE
原因: 式におけるgetTable dataの使用方法が無効です。OracleAS TopLinkのこの開発例外をユーザーが目にすることは考えられません。
処置: オラクル社カスタマ・サポート・センターにこの問題を報告してください。
6050: REPORT_QUERY_RESULT_SIZE_MISMATCH
原因: 要求された属性の数が、レポート問合せでデータベースから返された属性の数に一致しません。これは、レポート問合せでのカスタム問合せの結果として起こることがあります。
処置: カスタム問合せをチェックして、それが指定されていることを確認するか、オラクル社カスタマ・サポート・センターにこの問題を報告してください。
6051: CANNOT_CACHE_PARTIAL_OBJECT
原因: 部分オブジェクトがキャッシュに入れられることはありません。部分オブジェクト問合せによってキャッシュをメンテナンスしたり、部分オブジェクト問合せを編集したりすることはできません。dontMaintainCache()を設定します。
処置: 問合せを実行する前に、dontMaintainCache()メソッドをコールします。
6052: OUTER_JOIN_ONLY_VALID_FOR_ONE_TO_ONE
原因: 外部結合(getAllowingNull)は1対1マッピングに対してのみ有効であり、このマッピングには使用できません。
処置: getAllowingNullを1対1以外のマッピングに使用しないでください。
6054: CANNOT_ADD_TO_CONTAINER
原因: OracleAS TopLinkが、policyを使用してanObjectcontainerClassに追加できません。これは、OracleAS TopLinkの開発例外です。カスタム・コンテナ・ポリシーを作成しないかぎり、ユーザーがこの問題に遭遇することは考えられません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6055: METHOD_INVOCATION_FAILED
原因: オブジェクトanObjectに対するメソッドの起動により、このメソッドへのアクセス中にJavaリフレクション例外がスローされました。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
6056: CANNOT_CREATE_CLONE
原因: policyを使用してオブジェクトanObjectのクローンを作成することはできません。これは、OracleAS TopLinkの開発例外です。カスタム・コンテナ・ポリシーを作成しないかぎり、ユーザーがこの問題に遭遇することは考えられません。
処置: オラクル社カスタマ・サポート・センターにこの問題を報告してください。
6057: METHOD_NOT_VALID
原因: メソッドmethodNameは、オブジェクトaReceiverに対してコールするには有効ではありません。これは、OracleAS TopLinkの開発例外です。カスタム・コンテナ・ポリシーを作成しないかぎり、ユーザーがこの問題に遭遇することは考えられません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6058: METHOD_DOES_NOT_EXIST_IN_CONTAINER_CLASS
原因: methodNameという名前のメソッドがクラスaClassに見つかりませんでした。これは、コンテナ・クラスでクローン・メソッドを探す際にスローされます。クローンは、作業ユニットでコンテナのクローンを作成するために必要です。
処置: コンテナ・クラスにクローン・メソッドを定義します。
6059: COULD_NOT_INSTANTIATE_CONTAINER_CLASS
原因: クラスaClassはインスタンス化できないため、問合せ結果のコンテナとしては使用できません。この例外は、Javaリフレクションを使用して新規インタフェースのコンテナ・ポリシーを作成する際にスローされるJava例外です。OracleAS TopLinkでは、Java例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
6060: MAP_KEY_NOT_COMPARABLE
原因: タイプobjectClassのオブジェクトanObjectは、タイプcontainerClassaContainerへのキーとして使用できません。このキーは、現在マップ内にあるキーと比較できません。これにより、メソッドへのアクセス中にJavaリフレクション例外がスローされます。OracleAS TopLinkでは、Java例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
6061: CANNOT_ACCESS_METHOD_ON_OBJECT
原因: タイプanObjectClassのオブジェクトanObjectに対するメソッドaMethodに、リフレクションを使用してアクセスできません。これにより、メソッドへのアクセス中にJavaリフレクション例外がスローされます。OracleAS TopLinkでは、Java例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
6062: CALLED_METHOD_THREW_EXCEPTION
原因: リフレクションを使用してobjectClassに対してメソッドaMethodがコールされ、例外をスローしました。メソッドへのアクセス中に、Javaリフレクション例外がスローされます。OracleAS TopLinkでは、Java例外のみがラップされます。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
6063: INVALID_OPERATION
原因: カーソルに対する無効な操作operationです。この操作はサポートされていません。
処置: クラスのドキュメントをチェックし、対応するメソッドを見つけて使用します。
6064: CANNOT_REMOVE_FROM_CONTAINER
原因: policyを使用して、タイプanObjectClassanObjectaContainerClassから削除できません。これは、OracleAS TopLinkの開発例外です。カスタム・コンテナ・ポリシーを作成しないかぎり、ユーザーがこの問題に遭遇することは考えられません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6065: CANNOT_ADD_ELEMENT
原因: コレクション・コンテナ・ポリシーに要素を追加できません(タイプanObjectClassanObjectaContainerClassに追加できません)。
処置: 内部例外を調べ、Javaのドキュメントを参照してください。
6066: BACKUP_CLONE_DELETED
原因: 削除されたオブジェクトが削除後に参照を持つことはできません。アイデンティティ・ハッシュ・コード(System.identityHashCode()) System.identityHashCode(clone)を持つクラスclone.getClass()のオブジェクト・クローンは削除されましたが、参照がまだ残っています。
処置: オブジェクトが正しく登録されていることを確認します。それでも問題が発生する場合は、UnitOfWork.validateObjectSpace()メソッドを使用すると、エラーの発生箇所を特定できます。
6068: CANNOT_COMPARE_TABLES_IN_EXPRESSION
原因: 式で表参照をdataと比較できません。
処置: 式をチェックします。
6069: INVALID_TABLE_FOR_FIELD_IN_EXPRESSION
原因: 式のフィールドdataには、このコンテキストで無効な表が含まれています。
処置: 式をチェックします。
6070: INVALID_USE_OF_TO_MANY_QUERY_KEY_IN_EXPRESSION
原因: 式で1対多リレーションシップdataを表す問合せキーの使用方法が無効です。
処置: getではなく、anyOf演算子を使用します。
6071: INVALID_USE_OF_ANY_OF_IN_EXPRESSION
原因: 式で対多リレーションシップdataを表さない問合せキーに対するanyOfの使用方法が無効です。
処置: anyOfではなく、get演算子を使用します。
6072: CANNOT_QUERY_ACROSS_VARIABLE_ONE_TO_ONE_MAPPING
原因: 可変1対1マッピングに対する問合せはサポートされていません。
処置: 問合せが可変1対1マッピングに対して実行されないように、式を変更します。
6073: ILL_FORMED_EXPRESSION
原因: 問合せの式に不具合があります。queryKeyに対するSQL文にオブジェクト参照を出力しようとしています。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6074: CANNOT_CONFORM_EXPRESSION
原因: この式では、オブジェクトがメモリー内で一致しているかどうかを判別できません。データベースをチェックする問合せを設定します。
処置: 問合せ結果への一致を試行しないように問合せを変更します。
6075: INVALID_OPERATOR_FOR_OBJECT_EXPRESSION
原因: オブジェクト比較では、equalまたはnotEqual演算子のみを使用できます。他の比較は、問合せキーまたは属性レベルの直接比較を通じて行う必要があります。
処置: オブジェクト比較を使用する場合は、問合せでequalnotEqualのみを使用していることを確認します。
6076: UNSUPPORTED_MAPPING_FOR_OBJECT_COMPARISON
原因: オブジェクト比較は、1対1マッピングでのみ使用できます。他のマッピング比較は、問合せキーまたは属性レベルの直接比較を通じて行う必要があります。
処置: マッピング内でオブジェクトを比較しようとするのではなく、問合せキーを使用します。
6077: OBJECT_COMPARISON_CANNOT_BE_PARAMETERIZED
原因: オブジェクト比較は、パラメータ問合せでは使用できません。
処置: パラメータ化された問合せを使用する場合は、オブジェクトを使用しないように問合せを変更します。
6078: INCORRECT_CLASS_FOR_OBJECT_COMPARISON
原因: オブジェクト比較用の引数のクラスが正しくありません。
処置: 問合せに対するクラスが正しいことを確認します。
6079: CANNOT_COMPARE_TARGET_FOREIGN_KEYS_ TO_NULL
原因: オブジェクト比較は、ターゲット外部キー・リレーションシップには使用できません。
処置: ソース主キーに対して問合せを行います。
6080: INVALID_DATABASE_CALL
原因: 無効なデータベース・コールです。コールは、DatabaseCall: callのインスタンスであることが必要です。
処置: 使用しているコールがDatabaseCallであることを確認します。
6081: INVALID_DATABASE_ACCESSOR
原因: 無効なデータベース・アクセッサです。アクセッサはDatabaseAccessor: accessorのインスタンスであることが必要です。
処置: 使用しているアクセッサがDatabaseAccessorであることを確認します。
6082: METHOD_DOES_NOT_EXIST_ON_EXPRESSION
原因: 引数のタイプがargTypesのメソッドmethodNameは、式に対して起動できません。
処置: 使用しているメソッドが、サポートされているメソッドであることを確認します。
6083: IN_CANNOT_BE_PARAMETERIZED
原因: INを使用した問合せはパラメータ化できません。
処置: 問合せ準備またはバインドを無効にします。
6084: REDIRECTION_CLASS_OR_METHOD_NOT_SET
原因: リダイレクション問合せは適切に構成されていませんでした。クラスまたはメソッドの名前が設定されていませんでした。
処置: リダイレクション・クラスの構成を確認します。
6085: REDIRECTION_METHOD_NOT_DEFINED_CORRECTLY
原因: リダイレクション問合せのメソッドが定義されていないか、誤った引数で定義されています。メソッドは、引数DatabaseQueryDatabaseRowまたはSession(インタフェース)を持ち、public staticであることが必要です。
処置: リダイレクション問合せのメソッドをチェックします。
6086: REDIRECTION_METHOD_ERROR
原因: MethodBaseQueryRedirectorに対して指定したstaticな起動メソッドが、起動時に例外をスローしました。
処置: staticな起動メソッドに問題がないかどうかチェックします。
6087: EXAMPLE_AND_REFERENCE_OBJECT_CLASS_MISMATCH
原因: サンプル・オブジェクトとこの問合せに対して指定した参照クラスの間に、クラスの不一致があります。
処置: サンプル・クラスと参照クラスに互換性があることを確認します。
6088: NO_ATTRIBUTES_FOR _REPORT_QUERY
原因: ReportQueryは属性の指定なしで作成されました。
処置: 問合せの属性を指定します。
6089: NO_EXPRESSION_BUILDER_CLASS_FOUND
原因: 式が正しく初期化されていません。式ではExpressionBuilderを1つだけ使用してください。パラレル式の場合、問合せクラスをExpressionBuilderコンストラクタに指定する必要があります。また、問合せのExpressionBuilderは常に式の左側にあることが必要です。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6090: CANNOT_SET_REPORT_QUERY_TO_CHECK_CACHE_ONLY
原因: checkCacheOnlyメソッドがReportQueryに対して起動されました。ReportQueryはオブジェクトではなくデータを返すこと、およびOracleAS TopLinkのキャッシュはオブジェクトで構成されていることから、checkCacheOnlyメソッドをReportQueryに対して起動することはできません。
処置: この場合は、ReportQueryを使用しないでください。
6091: TYPE_MISMATCH_BETWEEN_ATTRIBUTE_AND_CONSTANT_ON_EXPRESSION
原因: 式で比較に使用される定数のタイプが属性のタイプと一致しません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
6092: MUST_INSTANTIATE_VALUEHOLDERS
原因: インスタンス化されていないValueHolderが検出されました。
処置: 問合せを行うコレクションに対してValueHolderをインスタンス化します。
6093: MUST_BE_ONE_TO_ONE_OR_ONE_TO_MANY_MAPPING
原因: 1対1でも1対多でもないマッピングに対してbuildSelectionCriteriaメソッドが起動されました。このパブリックAPIを使用して選択基準を作成できるのは、1対1マッピングと1対多マッピングのみです。buildSelectionCriteriaメソッドをその他のマッピング・タイプとともに使用すると、正しい結果が返されません。
処置: buildSelectionCriteriaメソッドは、1対1マッピングおよび1対多マッピングでのみ使用します。
6094: PARAMETER_NAME_MISMATCH
原因: マップされていないフィールドがパラメータ化された式で使用されました。
処置: フィールドをマップするか、マップされていないフィールドを使用しない別の式を定義します。
6095: CLONE_METHOD_REQUIRED
原因: IndirectContainer実装の委譲クラスがCloneableを実装していません。IndirectContainerを実装する場合は、Cloneableも実装する必要があります。たとえば、oracle.toplink.indirection.IndirectSetについて考えてみます。cloneメソッドは委譲クラスをクローン化する必要があります。たとえば、IndirectSet実装はIndirectSetとそのベース委譲クラスHashSetによって共有される共通インタフェースに含まれていないため、リフレクションを使用してcloneメソッドを起動します。
処置: IndirectContainer実装またはその委譲クラスがCloneableを実装していることを確認します。
6096: CLONE_METHOD_INACCESSIBLE
原因: IndirectContainer実装の委譲クラスがCloneableを実装していますが、IndirectContainer実装が指定したクローン・メソッドにアクセスできません。つまり、委譲クローン・メソッドが起動されたときにjava.lang.IllegalAccessExceptionがスローされました。
処置: 委譲クローン・メソッドと委譲クラスの両方がpublicであることを確認します。VMのセキュリティ設定でJavaリフレクションのパーミッションが設定されていることを確認します。java.lang.reflect.Method.invoke()も参照してください。
6097: CLONE_METHOD_THORW_EXCEPTION
原因: IndirectContainer実装の委譲クラスがCloneableを実装し、IndirectContainer実装は指定したクローン・メソッドにアクセスできますが、指定したクローン・メソッドが起動時にjava.lang.reflect.InvocationTargetExceptionをスローします。
処置: 委譲クローン・メソッドの実装を確認します。
6098: UNEXPECTED_INVOCATION
原因: プロキシ・オブジェクト・メソッドが起動時に予期しない例外(つまり、InvocationTargetExceptionおよびValidationException以外の例外)をスローします。
処置: プロキシ・オブジェクトを調べて、例外メッセージに示された例外がスローされている場所を確認します。この例外がスローされなくなったことを確認します。
6105: MUST_USE_CURSOR_STREAM_POLICY
原因: 問合せは、カーソル・ストリーム・ポリシーを使用して再初期化する必要があります。
処置: カーソル・ストリーム・ポリシーを使用して問合せを再初期化します。

検証例外(7001〜7108)

検証例外は、誤った状態が検出された場合やAPIの使用方法が正しくない場合に発生する開発例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-8 検証例外

EXCEPTION [TOPLINK – 7008]: oracle.toplink.exceptions.ValidationException
EXCEPTION DESCRIPTION: The Java type javaClass is not a valid database type. The Java type of the field to be written to the database has no corresponding type on the database.

7001: LOGIN_BEFORE_ALLOCATING_CLIENT_SESSIONS
原因: サーバーにログインする前にクライアント・セッションを割り当てようとしました。
処置: サーバー・セッションまたはデータベース・セッションに対してlogin()をコールしたことを確認します。このエラーは、マルチスレッド環境で並行性の問題が発生した場合にも表示されます。すべてのスレッドが同期化されていることをチェックします。
7002: POOL_NAME_DOES_NOT_EXIST
原因: サーバー・セッションからクライアント・セッションを取得する際に使用されたプール名が存在しません。
処置: クライアント・セッションを取得する際に指定したプール名と、サーバー・セッションの既存の全プールを確認します。
7003: MAX_SIZE_LESS_THAN_MIN_SIZE
原因: 接続プールにおける最大接続数は、最小接続数よりも大きい必要があります。
処置: サーバー・セッションに対するaddConnectionPool(String poolName, JDBCLogin login, int minNumberOfConnections, int maxNumberOfConnections)をチェックします。
7004: POOLS_MUST_BE_CONFIGURED_BEFORE_LOGIN
原因: サーバー・セッションへのログインが完了する前に、すべてのプールを追加する必要があります。ログイン後はプールを追加できません。
処置: サーバー・セッションに対するaddConnectionPool(String poolName, JDBCLogin login, int minNumberOfConnections, int maxNumberOfConnections)をチェックします。このメソッドは、サーバー・セッションにログインする前にコールする必要があります。
7008: JAVA_TYPE_IS_NOT_A_VALID_DATABASE_TYPE
原因: JavaタイプjavaClassは有効なデータベース・タイプではありません。データベースに書き込まれるフィールドのJavaタイプに対応するタイプがデータベースに存在しません。
処置: 表またはストアド・プロシージャの定義をチェックします。
7009: MISSING_DESCRIPTOR
原因: ディスクリプタclassNameがセッションに見つかりません。
処置: クラスへの関連ディスクリプタがセッションに正しく登録されたことを確認します。
7010: START_INDEX_OUT_OF_RANGE
原因: これはOracleAS TopLinkの開発例外であり、ユーザーがこの問題に遭遇することは考えられません。この問題は、Vectorのコピーが開始索引と終了索引を使用して作成されたときに発生します。
処置: オラクル社カスタマ・サポート・センターにこの問題を報告してください。
7011: STOP_INDEX_OUT_OF_RANGE
原因: これはOracleAS TopLinkの開発例外であり、ユーザーがこの問題に遭遇することは考えられません。この問題は、Vectorのコピーが開始索引と終了索引を使用して作成されたときに発生します。
処置: オラクル社カスタマ・サポート・センターにこの問題を報告してください。
7012: FATAL_ERROR_OCCURRED
原因: これはOracleAS TopLinkの開発例外であり、ユーザーがこの問題に遭遇することは考えられません。この問題は、テスト・ケースが実行されたときに発生します。
処置: オラクル社カスタマ・サポート・センターにこの問題を報告してください。このエラーがよく発生するのは、無効な(それまでにコミットされていない)UnitOfWorkcommit()を試行した場合です。

スタック・トレースにValidationException.cannotCommitUOWAgain()が表示された場合は、コールcommit()が有効なUnitOfWorkインスタンスに対するものであることを確認します。

7013: NO_PROPERTIES_FILE_FOUND
原因: toplink.propertiesファイルがシステムのクラスパスに見つかりません。
処置: toplink.propertiesファイルがシステムのクラスパスにあることを確認します。
7017: CHILD_DESCRIPTORS_DO_NOT_HAVE_IDENTITY_MAP
原因: アイデンティティ・マップが子ディスクリプタに追加されました。子ディスクリプタは親のアイデンティティ・マップを共有します。
処置: 子ディスクリプタをチェックし、子ディスクリプタからアイデンティティ・マップを削除します。
7018: FILE_ERROR
原因: ユーザーがこの問題に遭遇することは考えられません。この問題は、テスト・ケースが実行されたときに発生します。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7023: INCORRECT_LOGIN_INSTANCE_PROVIDED
原因: login()メソッドに指定したログイン・インスタンスが正しくありません。JDBCLoginを指定する必要があります。
処置: JDBCLoginを使用します。
7024: INVALID_MERGE_POLICY
原因: これはOracleAS TopLinkの開発例外であり、ユーザーが遭遇することは考えられません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7025: ONLY_FIELDS_ARE_VALID_KEYS_FOR_ DATABASE_ROWS
原因: データベース行のキーがタイプStringとタイプDatabaseFieldのどちらでもありません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7027: SEQUENCE_SETUP_INCORRECTLY
原因: 順序sequenceNameが正しく設定されていません。増分が事前割当てサイズに一致しません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7030: CANNOT_SET_READ_POOL_SIZE_AFTER_LOGIN
原因: サーバー・セッションへのログイン後は、OracleAS TopLinkで読取りプール・サイズを設定できません。
処置: サイズはログイン前に設定する必要があります。
7031: CANNOT_ADD_DESCRIPTORS_TO_SESSION_BROKER
原因: OracleAS TopLinkがセッション・ブローカにディスクリプタを追加できません。
処置: ディスクリプタは、セッション・ブローカに含まれているセッションに追加されます。
7032: NO_SESSION_REGISTERED_FOR_CLASS
原因: セッション・ブローカに登録されているどのセッションにも、ドメイン・クラスdomainClassに関連するディスクリプタが見つかりませんでした。
処置: セッションをチェックします。
7033: NO_SESSION_REGISTERED_FOR_NAME
原因: 指定した名前sessionNameのセッションは、セッション・ブローカに登録されていません。
処置: セッション・ブローカをチェックします。
7038: LOG_IO_ERROR
原因: セッション・ログにメッセージを記録中にエラーが発生しました。
処置: 内部例外をチェックします。
7039: CANNOT_REMOVE_FROM_READ_ONLY_CLASSES_ IN_NESTED_UNIT_OF_WORK
OracleAS TopLinkが、ネストした作業ユニット内の読取り専用クラスのセットから削除できません。ネストした作業ユニットの読取り専用クラスのセットは、親の読取り専用クラスのセットと同一か、そのスーパーセットであることが必要です。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7040: CANNOT_MODIFY_READ_ONLY_CLASSES_SET_ AFTER_USING_UNIT_OF_WORK
OracleAS TopLinkが、作業ユニットの使用後に、その作業ユニットで読取り専用クラスのセットを変更できません。読取り専用セットの変更は、作業ユニットの取得時またはその直後に行う必要があります。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7042: PLATFORM_CLASS_NOT_FOUND
原因: プラットフォーム・クラスclassNameが見つからず、リフレクション例外がスローされました。
処置: 内部例外をチェックします。
7043: NO_TABLES_TO_CREATE
原因: projectには、データベースに作成する表がありません。
処置: 作成しようとしているプロジェクトと表を検証します。
7044: ILLEGAL_CONTAINER_CLASS
原因: 指定したコンテナ・クラスclassNameは、CollectionまたはMapインタフェースを実装していないため、コンテナとして使用できません。
処置: CollectionまたはMapインタフェースをコンテナ・クラスに実装します。
7047: CONTAINER_POLICY_DOES_NOT_USE_KEYS
原因: 無効なマップ・クラスがコンテナ・ポリシーに対して指定されました。指定したコンテナ(クラスaPolicyContainerClass)は、キーを必要としません。methodNameを使用しようとしました。
処置: Mapインタフェースを実装するマップ・クラスを使用します。
7048: METHOD_NOT_DECLARED_IN_ITEM_CLASS
原因: マップ・コンテナ・ポリシーのキー・メソッドが定義されていません。インスタンス・メソッド<methodName>は参照クラス<className>内に存在しないため、マップでのキーの作成には使用できません。マップ・コンテナ・ポリシーは、オブジェクトの索引付きコレクションの処理方法を示しています。通常、キーは格納されているオブジェクトの主キーです。そのため、リフレクションを使用して各オブジェクトから主キーを抽出するには、ポリシーが主キーのgetメソッドの名前を認識している必要があります。たとえば、policy.setKeyMethodName("getId")をコールします。
処置: DatabaseQuery.useMapClass()コールの2番目のパラメータをチェックします。
7051: MISSING_MAPPING
原因: sourceからコールされたディスクリプタdescriptorの属性attributeNameがありません。これはOracleAS TopLinkの開発例外であり、ユーザーが目にすることは考えられません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7052: ILLEGAL_USE_OF_MAP_IN_DIRECTCOLLECTION
原因: メソッドuseMapClassDirectCollectionMappingに対してコールされました。useMapClass()DirectCollectionMappingに対してコールするのは無効です。OracleAS TopLinkは、DirectCollectionMappingを使用してマップされたJava属性をマップによってインスタンス化することはできません。useMapClass() APIは、OneToManyMappingsManyToManyMappingsに対してサポートされています。Java 2のCollectionインタフェースは、useCollectionClass()メソッドを使用することでサポートされます。
処置: useCollectionClass() APIを使用します。useMapClass()DirectCollectionMappingsに対してコールしないでください。
7053: CANNOT_RELEASE_NON_CLIENTSESSION
原因: OracleAS TopLinkは、クライアント・セッションではないセッションを解放できません。解放できるのはクライアント・セッションのみです。
処置: コードを変更して、クライアント・セッションが解放されないようにします。
7054: CANNOT_ACQUIRE_CLIENTSESSION_FROM_SESSION
原因: OracleAS TopLinkは、クライアント・セッションではないセッションを取得できません。クライアント・セッションを取得できるのはサーバー・セッションからのみです。
処置: コードを変更して、セッション取得操作がサーバー・セッションからしか試行されないようにします。
7055: OPTIMISTIC_LOCKING_NOT_SUPPORTED
原因: オプティミスティック・ロックは、ストアド・プロシージャの生成ではサポートされません。
処置: ストアド・プロシージャの生成でOptimisticLockingを使用しないでください。
7056: WRONG_OBJECT_REGISTERED
原因: 作業ユニットに登録されたオブジェクトが正しくありませんでした。オブジェクトは親キャッシュ内のものであることが必要です。
処置: オブジェクトが親キャッシュ内のものであることを確認します。
7058: INVALID_CONNECTOR
原因: 選択されたコネクタは無効です。タイプDefaultConnectorであることが必要です。
処置: コネクタのタイプがDefaultConnectorであることを確認します。
7059: INVALID_DATA_SOURCE_NAME
原因: 無効なデータ・ソース名nameです。
処置: データ・ソース名を確認します。
7060: CANNOT_ACQUIRE_DATA_SOURCE
原因: OracleAS TopLinkがデータ・ソースnameを取得できないか、データ・ソースの設定中にエラーが発生しました。
処置: データ・ソース名を確認します。ネストしたSQL例外をチェックして、エラーの原因を特定します。よくある問題を次に示します。
  • config.xmlファイルで接続プールが構成されていない。

  • ドライバがクラスパスにない。

  • ユーザーまたはパスワードが正しくない。

  • データベース・サーバーのURLまたはドライバ名が正しく指定されていない。

7061: JTS_EXCEPTION_RAISED
原因: JTS内で例外が発生しました。
処置: JTS例外を調べ、JTSのドキュメントを参照してください。
7062: FIELD_LEVEL_LOCKING_NOTSUPPORTED_ OUTSIDE_A_UNIT_OF_WORK
原因: FieldLevelLockingは作業ユニット外部ではサポートされていません。フィールド・レベル・ロックを使用するには、作業ユニットをすべての書込み操作に使用する必要があります。
処置: 作業ユニットを書込みに使用します。
7063: EJB_CONTAINER_EXCEPTION_RAISED
原因: EJBコンテナ内で例外が発生しました。
処置: EJB例外を調べ、JTSのドキュメントを参照してください。
7064: EJB_PRIMARY_KEY_REFLECTION_EXCEPTION
原因: リフレクションを使用したEJB Bean主キーの抽出で例外が発生しました。
処置: 主キー・オブジェクトが正しく定義されていることを確認します。
7065: EJB_CANNOT_LOAD_REMOTE_CLASS
原因: Beanのリモート・クラスがそのBeanに対してロードできないか、見つかりません。
処置: 正しいクラス・ローダーが正しく設定されていることを確認します。
7066: EJB_MUST_BE_IN_TRANSACTION
原因: JTSトランザクションが存在し、bean=beanでないかぎり、OracleAS TopLinkはBeanの作成または削除を行えません。
処置: JTSトランザクションが存在することを確認します。
7068: EJB_INVALID_PROJECT_CLASS
原因: デフォルト・クラス・ローダーを使用するprojectNameのプラットフォーム・クラスplatformNameが見つかりませんでした。
処置: プロジェクトとプラットフォームを検証します。
7069: PROJECT_AMENDMENT_EXCEPTION_OCCURED
原因: クラスamendmentClassのプロジェクト修正メソッドamendmentMethodを検索または起動する際に、例外が発生しました。
処置: 修正メソッドとクラスを検証します。
7070: EJB_TOPLINK_PROPERTIES_NOT_FOUND
原因: toplink.propertiesリソース・バンドルは、クラスパスのOracleAS TopLinkディレクトリに位置している必要があります。
処置: クラスパスとOracleAS TopLinkリソース・バンドルの場所を検証します。
7071: CANT_HAVE_UNBOUND_IN_OUTPUT_ARGUMENTS
原因: バインドを使用しないと入出力パラメータは使用できません。
処置: StoredProcedureCallに対してバインドを使用します。
7072: EJB_INVALID_PLATFORM_CLASS
原因: SessionManagerが、OracleAS TopLinkグローバル・プロパティ・ファイル(EJB以外のアプリケーションの場合はsessions.xml、EJBアプリケーションの場合はtoplink-ejb-jar.xml)からOracleAS TopLinkセッションの共通プロパティをロードする際の初期化中に、プロパティplatform-classまたはexternal-transaction-controller-classに関連付けられている値で指定されたクラスをロードできませんでした。
処置: OracleAS TopLinkグローバル・プロパティ・ファイルが正しく構成されていることを確認します。特に、platform-classおよびexternal-transaction-controller-classプロパティに注意してください。
7073: ORACLE_OBJECT_TYPE_NOT_DEFINED
原因: タイプ名がtypeNameのOracleオブジェクト・タイプが定義されていません。
処置: Oracleオブジェクト・タイプが定義されていることを確認します。
7074: ORACLE_OBJECT_TYPE_NAME_NOT_DEFINED
原因: Oracleオブジェクト・タイプtypeNameが定義されていません。
処置: Oracleオブジェクト・タイプが定義されていることを確認します。
7075: ORACLE_VARRAY_MAXIMIM_SIZE_NOT_DEFINED
原因: Oracle VARRAYタイプtypeNameの最大サイズが定義されていません。
処置: Oracle VARRAYの最大サイズを確認します。
7076: DESCRIPTOR_MUST_NOT_BE_INITIALIZED
原因: プロジェクト・クラスの生成中に、ディスクリプタを初期化しないでください。
処置: プロジェクト・クラスの生成前にディスクリプタが初期化されないことを確認します。
7077: EJB_INVALID_FINDER_ON_HOME
原因: BMPWrapperPolicyの作成中に指定されたHomeインタフェースhomeClassName.toString()に、正しいfindByPrimaryKeyメソッドが含まれていません。findByPrimaryKeyメソッドは、このBeanのPrimaryKeyクラスを取得するために必要です。
処置: FindByPrimaryKeyメソッドが存在し、正しいことを確認します。
7078: EJB_NO_SUCH_SESSION_SPECIFIED_IN_PROPERTIES
原因: デプロイメント・ディスクリプタに指定されたsessionNameが、toplink.propertiesファイルに指定されたどのセッションとも一致しません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7079: EJB_DESCRIPTOR_NOT_FOUND_IN_SESSION
原因: ディスクリプタがセッションに見つかりませんでした。
処置: このセッションで使用されているプロジェクトをチェックします。
7080: EJB_FINDER_EXCEPTION
原因: 主キーを使用してクラスからオブジェクトをロードしようとしたときに、FinderExceptionがスローされました。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7081: CANNOT_REGISTER_AGGREGATE_OBJECT_IN_ UNIT_OF_ WORK
原因: 集計オブジェクトは作業ユニットに直接登録できません。ソース(所有者の)・オブジェクトと関連付ける必要があります。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7082: MULTIPLE_PROJECTS_SPECIFIED_IN_PROPERTIES
原因: toplink.propertiesファイルで、複数のプロジェクト・ファイルがサーバーに対して指定されています。プロジェクト・ファイルは1つしか指定できません。
処置: projectClassprojectFilexmlProjectFileのいずれかを指定します。
7083: NO_PROJECT_SPECIFIED_IN_PROPERTIES
原因: toplink.propertiesファイルに、サーバーで使用するOracleAS TopLinkプロジェクトの情報が含まれていません。プロジェクト・ファイルを1つ指定する必要があります。
処置: projectClassprojectFilexmlProjectFileのいずれかを指定します。
7084: INVALID_FILE_TYPE
原因: 指定したファイルは読取りに有効なタイプではありません。ProjectReaderにはデプロイ済のXMLプロジェクト・ファイルが必要です。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7085: SUB_SESSION_NOT_DEFINED_FOR_BROKER
原因: プロパティ・ファイルに指定された外部トランザクション・コントローラのインスタンスを作成できません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7086: EJB_INVALID_SESSION_TYPE_CLASS
原因: セッション・マネージャが、セッションのタイプのクラス名に対応するクラスをロードできません。
処置: sessions.xmlファイルまたはtoplink.propertiesファイルで、セッションのタイプのクラス名が完全に修飾されていることを確認します。
7087: EJB_SESSION_TYPE_CLASS_NOT_FOUND
原因: セッション・マネージャが、セッションのタイプのクラス名に対応するクラスをロードできません。
処置: sessions.xmlファイルまたはtoplink.propertiesファイルで、セッションのタイプのクラス名が完全に修飾されていることを確認します。
7088: CANNOT_CREATE_EXTERNAL_TRANSACTION_ CONTROLLER
原因: セッション・マネージャが、外部トランザクション・コントローラのクラス名に対応するクラスをロードできません。
処置: sessions.xmlファイルまたはtoplink.propertiesファイルで、外部トランザクション・コントローラのクラス名が有効であり、完全に修飾されていることを確認します。
7089: SESSION_AMENDMENT_EXCEPTION_OCCURED
原因: セッション・マネージャが修正クラス名に対応するクラスをロードできないか、修正クラス名に対応する修正クラスのメソッドをロードできません。
処置: sessions.xmlファイルまたはtoplink.propertiesファイルで、修正クラスのクラス名が完全に修飾されており、修正メソッドが修正クラス内に存在することを確認します。
7091: SET_LISTENER_CLASSES_EXCEPTION
原因: OracleAS TopLinkが、SessionXMLProjectを内部的に使用するためのSessionEventListenerを実装するリスナー・クラスを作成できません。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。
7092: EXISTING_QUERY_TYPE_CONFLICT
原因: OracleAS TopLinkが、同じ名前と引数を持つ、セッションに対するカスタム問合せの競合を検出しました。
処置: 問合せが同じセッションに複数回追加されないようにするか、問合せ名を変更して他の問合せと区別できるようにします。
7093: QUERY_ARGUMENT_TYPE_NOT_FOUND
原因: OracleAS TopLinkが問合せの引数のタイプのインスタンスを作成できません。
処置: 引数のタイプが完全修飾クラス名であり、引数のクラスがクラスパス環境に含まれていることを確認します。
7094: ERROR_IN_SESSIONS_XML
原因: sessions.xmlまたはtoplink.propertiesファイルをロードできません。
処置: どちらのファイルのパスもクラスパス環境に存在することを確認します。
7095: NO_SESSIONS_XML_FOUND
原因: sessions.xmlまたはtoplink.propertiesファイルをロードできません。
処置: どちらのファイルのパスもクラスパス環境に存在することを確認します。
7096: CANNOT_COMMIT_UOW_AGAIN
原因: OracleAS TopLinkが、コミットまたは解放された非アクティブの作業ユニットに対してcommit()を起動できません。
処置: commit()を新規作業ユニットに対して起動するか、作業ユニットを再使用できるようにcommitAndResume()を起動します。commitAndResume()メソッドの詳細は、『Oracle Application Server TopLink API Reference』を参照してください。
7097: OPERATION_NOT_SUPPORTED
原因: OracleAS TopLinkは、サポートされていない操作をオブジェクトに対して起動できません。
処置: スタック・トレースに示された操作は使用しないでください。
7099: PROJECT_XML_NOT_FOUND
原因: XMLベースのプロジェクトに対して指定したファイル名が正しくありません。
処置: ファイルの名前と場所を確認します。
7101: NO_TOPLINK_EJB_JAR_XML_FOUND
原因: toplink-ejb-jar.xmlファイルが見つかりませんでした。
処置: ファイルがクラスパスにあることを確認します。
7102: NULL_CACHE_KEY_FOUND_ON_REMOVAL
原因: アイデンティティ・マップからオブジェクトを削除しようとしたときに、null値のキャッシュ・キーが見つかりました。この状況の原因として最も可能性が高いのは、オブジェクトのガベージ・コレクションがすでに行われたために、アイデンティティ・マップ内にオブジェクトが存在しないことです。
処置: 無視します。Session.removeFromIdentityMapメソッドはガベージ・コレクションを許可するためのものですが、ガベージ・コレクションはすでに行われています。
7103: NULL_UNDERLYING_VALUEHOLDER_VALUE
原因: プロキシ・インダイレクションを使用するオブジェクトに対してメソッドを起動しようとしたときに、null参照が発生しました。
処置: メソッドを起動する前に、このオブジェクトがnullでないかチェックしてください。
7104: INVALID_SEQUENCING_LOGIN
原因: 順序付けのために別々の接続が要求されましたが、順序付けログインでは外部トランザクション・コントローラが使用されます。
処置: 外部トランザクション・コントローラを使用しない順序付けログインを指定するか、順序付けのために別々の接続を使用するのをやめます。

EJB QL例外

EJB QL例外は、EJB QL文字列の解析が正しく行われない場合や、OracleAS TopLinkセッションのコンテキストで内容を解決できない場合に発生する、実行時例外です。通常、関連メッセージには問題の原因となったEJB QL文字列が示されています。

エラー・コード8001〜8010

エラー・コード: 8001

recognitionException
原因: OracleAS TopLinkのEJB QLパーサーがEJB QL文字列内の句を認識していません。
処置: EJB QL文字列を検証します。

エラー・コード: 8002

generalParsingException
原因: OracleAS TopLinkでのEJB QL文字列の解析中に、問題が発生しました。
処置: 内部例外をチェックし、この例外の根本的な原因の詳細を確認します。

エラー・コード: 8003

classNotFoundException
原因: EJB QL文字列で指定したクラスが見つかりませんでした。
処置: ファイルが適切なクラスパスにあることを確認します。

エラー・コード: 8004

aliasResolutionException
原因: OracleAS TopLinkが、EJB QL文字列で使用されている別名を解決できませんでした。
処置: EJB QL文字列で使用されている識別子を検証します。

エラー・コード: 8005

resolutionClassNotFoundException
原因: OracleAS TopLinkが別名のクラスを解決できませんでした。これは、指定したクラスが見つからないことを意味します。
処置: クラスが正しく指定されており、クラスパスにあることを確認します。

エラー・コード: 8006

missingDescriptorException
原因: 問合せで指定したクラスにOracleAS TopLinkディスクリプタがありません。
処置: クラスがマップ済で、EJB QL文字列に正しく指定されていることを確認します。

エラー・コード: 8009

expressionNotSupported
原因: サポートされていない式がEJB QLで使用されました。
処置: サポートされている式のみを使用するように問合せを変更します。

エラー・コード: 8010

generalParsingException
原因: OracleAS TopLinkでのEJB QL文字列の解析中に、問題が発生しました。
処置: 内部例外をチェックし、この例外の根本的な原因の詳細を確認します。

セッション・ローダー例外(9000〜9009)

セッション・ローダー例外は、sessions.xml(EJB以外のアプリケーションの場合)またはtoplink-ejb-jar.xml(EJBアプリケーションの場合)プロパティ・ファイルからセッション情報をロードする際に、セッション・マネージャで問題が発生した場合にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-9 セッション・ローダー例外

EXCEPTION [TOPLINK – 9004]: oracle.toplink.exceptions.SessionLoaderException
EXCEPTION DESCRIPTION: The <project-xml> file MyProject was not found on the classpath, nor on the filesystem.

エラー・コード9000〜9009

9000: FINAL_EXCEPTION
原因: セッション・ローダーがセッション情報のロード中にXML解析例外を1つ以上捕捉しました。個別のXML例外がこの後に続きます。
処置: セッション構成XMLファイルを確認します。
9001: UNKNOWN_TAG
原因: 指定したXMLノードに不明なタグが見つかりました。
処置: セッション構成XMLファイルに指定したXMLノードを調べます。適切なOracleAS TopLink DTDでそのノードに対して定義したタグのみを使用していることを確認します。<ORACLE_HOME>/toplink/config/dtdsを参照してください。
9002: UNABLE_TO_LOAD_PROJECT_CLASS
原因: 指定したクラス・ローダーが、project-nameプロパティで指定された名前のクラスをロードできませんでした。
処置: project-nameプロパティの値を確認し、値が正しい場合は、その名前のクラスがクラスパスに存在することを確認します。
9003: UNABLE_TO_PROCESS_TAG
原因: セッション・ローダーが、指定したタグの値の検証中、または指定したタグに関連付けられているsetメソッドのコール中に、例外を捕捉しました。
処置: 指定したタグに対して示されている値を確認します。
9004: COULD_NOT_FIND_PROJECT_XML
原因: セッション・ローダーが、project-xmlタグで指定されたファイルをクラスパスまたはファイルシステムで見つけられませんでした。
処置: project-xmlタグの値を確認し、値が正しい場合は、その名前のプロジェクトXMLファイルがクラスパスまたはファイルシステムに存在することを確認します。
9005: FAILED_TO_LOAD_PROJECT_XML
原因: セッション・ローダーが、project-xmlタグで指定されたファイルをロードしようとしたときに、例外を捕捉しました。ファイルが見つからなかったか、ファイルを解析できなかったためです。
処置: プロジェクトXMLファイルの構成を確認し、project-xmlタグで指定された名前のプロジェクトXMLファイルがクラスパスまたはファイルシステムに存在することを確認します。
9006: UNABLE_TO_PARSE_XML
原因: セッション・ローダーが、指定したXMLファイルの特定の行および列でXMLを解析しようとしたときに、Simple API for XML(SAX)例外を捕捉しました。OracleAS TopLinkでは、UTF-8 encodingしかサポートされません。UTF-8以外で書式設定されたXMLファイルを読み取ろうとすると、TopLink SAXParseExceptionが発生します。
処置: 特定の行および列のXMLの書式が正しいことを確認します。または、Oracle Parserがクラスパスにあり、他のXMLパーサーよりも前に指定されていることを確認します。
9007: NON_PARSE_EXCEPTION
原因: セッション・ローダーが、指定したXMLファイルを解析しようとしたときに、XML解析に関係のない例外(早期EOF例外など)を捕捉しました。
処置: XMLファイルの整合性を確認します。
9008: UN_EXPECTED_VALUE_OF_TAG
原因: XMLタグの値が、既知のOracleAS TopLink必須値のいずれにも対応していません。
処置: このタグの値リストを確認してください。
9009: UNKNOWN_ATTRIBUTE_OF_TAG
原因: RCMタグのトランスポート・プロパティの処理中に、誤った名前/値ペアが見つかりました。
処置: セッション構成XMLで、すべてのプロパティの名前と値が両方とも指定されていることを確認してください。

EJB例外ファクトリ

EJB例外ファクトリ例外は、EJBのライフ・サイクルのいずれかの段階で特定のアプリケーション・サーバー固有のBeanManagerに問題が発生した場合にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-10 EJB例外ファクトリ例外

EXCEPTION [TOPLINK – 10008]: javax.ejb.CreateException
EXCEPTION DESCRIPTION: Cannot find bean.

エラー・コード10001〜10048

エラー・コード: 10001

CREATE_EXCEPTION
原因: 特定のアプリケーション・サーバーのPersistenceManagerがEJBの作成に失敗しました(たとえば、作成中にNullPointerExceptionなどの問題が発生しました)。
処置: CreateExceptionに含まれる例外をチェックし、追加情報を確認します。

エラー・コード: 10002

REMOVE_EXCEPTION
原因: 特定のアプリケーション・サーバーのPersistenceManagerがEJBの削除に失敗しました(たとえば、削除中にNullPointerExceptionなどの問題が発生しました)。
処置: RemoveExceptionに含まれる例外をチェックし、追加情報を確認します。

エラー・コード: 10003

EJB_EXCEPTION
原因: 予期しない内部例外がスローされました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10004

FINDER_EXCEPTION1
原因: ファインダの実行中に予期しない例外が発生しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10005

FINDER_EXCEPTION2
原因: ファインダの実行中に予期しない例外が発生しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10007

DUPLICATE_KEY_EXCEPTION
原因: 指定した主キーを持つEJBがすでに存在するため、特定のアプリケーション・サーバーのPersistenceManagerがEJBの作成に失敗しました。
処置: アプリケーション・ロジックを確認し、主キーが一意になるようにします。

エラー・コード: 10008

OBJECT_NOT_FOUND_EXCEPTION
原因: スカラー・ファインダ(シングル・オブジェクトを返すファインダ)がホーム・インタフェースに対して起動され、nullを返しました。
処置: アプリケーション・ロジックを確認し、目的のEJBが存在するようにします。

エラー・コード: 10009

OBJECT_NOT_FOUND_PKEY_EXCEPTION
原因: 示された主キーを使用する検索でnullが返されました。
処置: アプリケーション・ロジックを確認し、目的のEJBが存在するようにします。

エラー・コード: 10010

CANNOT_CREATE_READ_ONLY
原因: session().getProject().setDefaultReadOnlyClasses(aVector)を使用して、読取り専用としてマークされたエンティティを作成しようとしました。読取り専用エンティティは作成できません。
処置: 読取り専用エンティティはデータベースから読み取ります(ホーム・インタフェースで作成しません)。必要なエンティティをあらかじめ読み取るようにアプリケーションを調整します。

エラー・コード: 10011

CANNOT_REMOVE_READ_ONLY
原因: session().getProject().setDefaultReadOnlyClasses(aVector)を使用して、読取り専用としてマークされたエンティティを削除しようとしました。読取り専用エンティティは削除できません。
処置: オブジェクトが読取り専用であることが必要かどうかを判断します。必要な場合は、そのオブジェクトを削除しようとしないでください。

エラー・コード: 10014

ERROR_IN_NON_TX_COMMIT
原因: 削除、作成、ビジネス・メソッド、またはホーム・メソッドの起動の後、特定のアプリケーション・サーバーのPersistenceManagerが(非同期かつ非JTAのUnitOfWorkで構成された)ローカル・トランザクションを終了できませんでした。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10021

ERROR_ASSIGNING_SEQUENCES
原因: 特定のアプリケーション・サーバーのPersistenceManagershouldAssignSequenceNumbersメソッドがTRUEを返す)がエンティティに順序番号を割り当てられませんでした。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10022

LIFECYCLE_REMOTE_EXCEPTION
原因: エンティティのアクティブ化、ロード、非アクティブ化または格納が行われたときに、java.rmi.RemoteExceptionがスローされました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10023

SEQUENCE_EXCEPTION
原因: 指定したエンティティに主キーが割り当てられるのを防ぐ、挿入後のDescriptorEventの処理中に、例外がスローされました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10024

NO_SUCH_ENTITY_EXCEPTION
原因: 主キーでの検索と同じ問合せを使用する一致検索がjavax.ejb.ObjectNotFoundExceptionで失敗しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10025

INTERNAL_ERROR_ACCESSING_CTX
原因: 内部エラーです。
処置: 必要な場合はオラクル社カスタマ・サポート・センターにご連絡ください。

エラー・コード: 10026

INTERNAL_ERROR_FINDING_GENSUBCLASS
原因: 内部エラーです。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。

エラー・コード: 10027

INTERNAL_ERROR_INITIALIZING_CTX
原因: 内部エラーです。
処置: オラクル社カスタマ・サポート・センターにご連絡ください。

エラー・コード: 10028

INTERNAL_ERROR_INVALID_MAPPING
原因: EJB setterメソッド内からコールされたSessionAccessor.registerOrMergeAttributeメソッドが、特定の属性のDatabaseMappingPersistenceManagerから取得できませんでした。
処置: 指定した属性がEJBクラスに属しているかどうかを確認し、属している場合は、その属性のマッピングが存在することを確認します。

エラー・コード: 10029

INTERNAL_ERROR_ACCESSING_PK
原因: Beanから主キーを抽出しようとして失敗したため、アプリケーションに返すEJBをラップできませんでした。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10030

INTERNAL_ERROR_ACCESSING_PKFIELD
原因: java.lang.NoSuchFieldExceptionのために、主キー・フィールドの初期化に失敗しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10031

INTERNAL_ERROR_PREPARING_BEAN_INVOKE
原因: 主キーでの検索と同じ問合せを使用する一致検索、BUISNESS_METHOD操作に対するOracle Application Server Containers for J2EEのstartCallメソッド起動、WebLogicのpreInvokeメソッド起動のいずれかがjavax.ejb.ObjectNotFoundException以外の例外で失敗しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10032

FINDER_NOT_IMPLEMENTED
原因: 関連付けられているファインダに実装がありません。
処置: ファインダの実装を提供します。

エラー・コード: 10033

FINDER_FINDBYPK_NULLPK
原因: 主キーでの検索がnull値の主キーでコールされました。
処置: ファインダが起動されるときに主キーがnullでないことを確認します。

エラー・コード: 10034

REMOVE_NULLPK_EXCEPTION
原因: 主キーでの検索がnull値の主キーでコールされました。
処置: ファインダが起動されるときに主キーがnullでないことを確認します。

エラー・コード: 10036

ERROR_DURING_CODE_GEN
原因: 特定のアプリケーション・サーバーのPersistenceManagerがBeanサブクラスのコード生成に失敗しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10037

ERROR_EXECUTING_EJB_SELECT
原因: EJBセレクトがjavax.ejb.ObjectNotFoundException以外の例外で失敗しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10038

ERROR_EXECUTING_EJB_HOME
原因: ホーム・インタフェース・メソッド(ファインダと作成メソッドを除く)の起動に失敗しました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 10040

NO_ACTIVE_TRANSACTION
原因: PersistenceManagerにトランザクションがないため、EJBの作成または削除に失敗しました。
処置: アプリケーションに使用可能なトランザクションがあることを確認します。これは、ejb-jar.xmlに関連した構成上の問題、またはクライアント・コードにおけるアプリケーション・ロジックの問題である可能性があります。

エラー・コード: 10043

FINDER_RESULTS_ALREADY_WRAPPED
原因: ファインダ問合せの結果はすでにラップされていたため、ラップできませんでした。
処置: リダイレクト問合せが使用されている場合、必ずsetShouldUseWrapperPolicy(false)メソッドを最初にコールします。

エラー・コード: 10045

LOCAL_WRAPPER_MISSING
原因: ローカル・インタフェースの解決中にエラーが発生しました。
処置: ローカル・インタフェースの構成を再確認してください。

エラー・コード: 10046

REMOTE_WRAPPER_MISSING
原因: リモート・インタフェースの解決中にエラーが発生しました。
処置: リモート・インタフェースの構成を再確認してください。

エラー・コード: 10047

CREATE_NULLPK_EXCEPTION
原因: 主キーが定義されていなかったため、特定のアプリケーション・サーバーのPersistenceManagerがBeanの作成に失敗しました。
処置: アプリケーション・ロジック内で、または順序番号の構成を通じて、主キーが正しく定義されていることを確認します。

通信例外

通信例外は、発生したRMI例外、CORBA例外または入出力例外をすべてラップする実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-11 通信例外

EXCEPTION [TOPLINK – 12000]: oracle.toplink.exceptions.CommunicationException
EXCEPTION DESCRIPTION: Error Sending connection service to myService.

エラー・コード12000〜12004

エラー・コード: 12000

ERROR_SENDING_CONNECTION_SERVICE
原因: CacheSynchronizationManagerまたはRemoteCommandManageへの接続の追加に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 12001

UNABLE_TO_CONNECT
原因: CacheSynronizationManagerが指定したサービスへの接続に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 12003

UNABLE_TO_PROPAGATE_CHANGES
原因: CacheSynronizationManagerが指定したサービスへの変更内容の伝播に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 12004

ERROR_IN_INVOCATION
原因: リモート・コールの起動中にエラーが発生しました。
処置: 根本的な原因については、生成された例外を参照してください。

XMLデータ・ストア例外

XMLデータ・ストア例外は、(リレーショナル・データベースを使用せずに)OracleAS TopLinkを使用してXMLファイルの形式でオブジェクトを永続化する際にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-12 XMLデータ・ストア例外

EXCEPTION [TOPLINK – 13000]: oracle.toplink.xml.XMLDataStoreException
EXCEPTION DESCRIPTION: File not found: C:\data\myTable\row.xml.

エラー・コード13000〜13020

エラー・コード: 13000

FILE_NOT_FOUND
原因: XMLファイル(個々のファイルまたはZIPアーカイブから抽出されたファイル)がファイル・システム内に見つからなかったため、そのファイルのWriteStreamを作成できませんでした。これは、XML DataAccessorがXMLファイルを更新しようとしているがそのファイルが存在しないという場合に起こります。アプリケーションとディスク上に存在するファイルが一致していないことを示しています。
処置: 指定したファイルが存在することを確認します。

エラー・コード: 13001

UNABLE_TO_CLOSE_WRITE_STREAM
原因: XMLデータ・ストアに行を書き込んだ後、java.io.IOExceptionのために、使用されたWriteStreamを閉じることができませんでした。これは、ディスクが満杯の場合に起こります。
処置: 根本的な原因については、生成された例外を参照してください。この操作を実行するのに十分なディスク領域があることを確認します。

エラー・コード: 13002

NOT_A_DIRECTORY
原因: 作成または削除しようとしているFileがディレクトリではないか、示されたディレクトリと同じ名前のファイルが存在するため、ファイル・ソースの作成または削除に失敗しました。
処置: 必要なディレクトリを作成するためのパーミッションがOracleAS TopLinkに付与されていることを確認します。この操作を実行するのに十分なディスク領域があることを確認します。

エラー・コード: 13003

DIRECTORY_COULD_NOT_BE_CREATED
原因: File.mkdirsメソッドが指定した抽象パス名(必要だが存在しない親を含む)のディレクトリを作成できなかったため、ファイル・ソースまたはドキュメント・ソースのチェックまたは作成に失敗しました。
処置: 必要なディレクトリを作成するためのパーミッションがOracleAS TopLinkに付与されていることを確認します。この操作を実行するのに十分なディスク領域があることを確認します。

エラー・コード: 13004

DIRECTORY_NOT_FOUND
原因: ディレクトリが存在せず、OracleAS TopLinkが必要に応じてディレクトリを作成するように設定されていません(createsDirectoriesAsNeededポリシーがFALSEです)。
処置: 適切なディレクトリを作成するか、必要に応じてディレクトリを作成するようにOracleAS TopLinkを構成します(createsDirectoriesAsNeededをTRUEに設定します)。

エラー・コード: 13005

FILE_ALREADY_EXISTS
原因: OracleAS TopLinkがファイルを作成しようとしていますが、そのファイルはすでに存在します。OracleAS TopLinkは新しいバージョンのファイルを作成できます。既存のファイルを上書きすることはありません。これは、XML DataAccessorがXMLファイルを挿入しようとしているがそのファイルが存在するという場合に起こります。アプリケーションとディスク上に存在するファイルが一致していないことを示しています。
処置: OracleAS TopLinkの書込み先を変更するか、既存のファイルを削除します。

エラー・コード: 13006

UNABLE_TO_CREATE_WRITE_STREAM
原因: java.io.IOExceptionのために、WriteStreamの作成に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 13007

INVALID_FIELD_VALUE
原因: オブジェクトのタイプが無効だったため、そのオブジェクトを表すXML要素の構成に失敗しました。ダイレクト・コレクションの場合、1つ以上の要素のタイプがnullまたはStringでした。ネストした行の場合、1つ以上の要素のタイプがDatabaseRowではありませんでした。
処置: 根本的な原因については、生成された例外を参照してください。永続化の対象となるオブジェクトの構成をチェックし、XMLデータ・ストアで永続化できることを確認します。

エラー・コード: 13008

CLASS_NOT_FOUND
原因: java.lang.ClassNotFoundExceptionのために、指定したクラスのロードに失敗しました。これは、OracleAS TopLink JARに問題がある(クラスoracle.toplink.xml.xerces.DefaultXMLTranslatorがない)か、カスタム・クラス・ローダーが適切に構成されていない(DatabaseLogin.setXMLParserJARFileNamesメソッドを参照)ことを示します。
処置: 根本的な原因については、生成された例外を参照してください。OracleAS TopLink JARにoracle.toplink.xml.xerces.DefaultXMLTranslatorが含まれていることを確認します。カスタム・クラス・ローダーを使用している場合、DatabaseLogin.setXMLParserJARFileNamesメソッドに渡されるJARファイルのリストにこのクラスが含まれていることを確認します。

エラー・コード: 13009

SAX_PARSER_ERROR
原因: org.xml.sax.SAXParseExceptionのために、指定したXMLファイルの解析に失敗しました。
処置: SAXParseExceptionがスローされた行および列の番号など、根本的な原因については、生成された例外を参照してください。

エラー・コード: 13010

GENERAL_EXCEPTION
原因: org.xml.sax.SAXParseException以外のなんらかの例外のために、操作が失敗しました。
処置: パーサーの作成中または操作が失敗する原因となったドキュメントの作成中に、例外がスローされました。根本的な原因については、生成された例外を参照してください。

エラー・コード: 13011

IOEXCEPTION
原因: java.io.IOExceptionのために、ReadStreamまたはWriteStreamを作成できませんでした。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 13012

UNABLE_TO_CLOSE_READ_STREAM
原因: XMLデータ・ストアから行を読み取った後、java.io.IOExceptionのために、使用されたReadStreamを閉じることができませんでした。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 13013

HETEROGENEOUS_CHILD_ELEMENTS
原因: 複合要素がDirectCollectionMappingに格納されています。SDKのDirectCollectionMappingsは、単純な要素に対してのみ使用できます。単純な要素は、テキスト・タイプの子をXML形式で1つだけ含んでいます。
処置: ダイレクト・コレクションとしてマップされた要素が単純な要素のみを含んでいることを確認します。
原因: 複雑な要素の子要素が同じタイプではありません。各子要素のタイプは最初の子要素のタイプと同じであることが必要です。
処置: XML文書が破損していないことを確認します。XML文書が有効な場合は、XML文書が例C-13例C-14に示すSDK要件を満たしていることを確認します。
原因: 複雑な要素の子要素の名前が異なっています。
処置: XML文書が破損していないことを確認します。XML文書が有効な場合は、XML文書が例C-13例C-14に示すSDK要件を満たしていることを確認します。

例C-13 SDKでサポートされるXML

<foo>
    <bar> [string or nested elements] </bar>
    <bar> [must match the first child: either string or nested elements] </bar>
    <bar> [must match the first child: either string or nested elements] </bar>
</foo>

例C-14 SDKでサポートされないXML

<foo>
    <bar> ... </bar>
    <fred> [this element will cause the exception] </fred>
    <bar> ... </bar>
</foo>

エラー・コード: 13017

INSTANTIATION_EXCEPTION
原因: java.lang.InstantiationExceptionのために、指定したクラスのインスタンス化に失敗しました。これは、OracleAS TopLink JARに問題がある(クラスoracle.toplink.xml.xerces.DefaultXMLTranslatorがない)か、カスタム・クラス・ローダーが適切に構成されていない(DatabaseLogin.setXMLParserJARFileNamesメソッドを参照)ことを示します。
処置: 根本的な原因については、生成された例外を参照してください。指定したクラスがインタフェースまたは抽象クラスではないことを確認します。OracleAS TopLink JARにoracle.toplink.xml.xerces.DefaultXMLTranslatorが含まれていることを確認します。カスタム・クラス・ローダーを使用している場合、DatabaseLogin.setXMLParserJARFileNamesメソッドに渡されるJARファイルのリストにこのクラスが含まれていることを確認します。

エラー・コード: 13018

INSTANTIATION_ILLEGAL_ACCESS_EXCEPTION
原因: java.lang.IllegalAccessExceptionのために、指定したクラスのインスタンス化に失敗しました。これは、OracleAS TopLink JARに問題がある(クラスoracle.toplink.xml.xerces.DefaultXMLTranslatorがない)か、カスタム・クラス・ローダーが適切に構成されていない(DatabaseLogin.setXMLParserJARFileNamesメソッドを参照)ことを示します。
処置: 根本的な原因については、生成された例外を参照してください。指定したクラスがパブリックであることを確認します。VMのセキュリティ設定でJavaリフレクションのパーミッションが設定されていることを確認します。指定したクラスがインタフェースまたは抽象クラスではないことを確認します。OracleAS TopLink JARにoracle.toplink.xml.xerces.DefaultXMLTranslatorが含まれていることを確認します。カスタム・クラス・ローダーを使用している場合、DatabaseLogin.setXMLParserJARFileNamesメソッドに渡されるJARファイルのリストにこのクラスが含まれていることを確認します。

エラー・コード: 13020

ELEMENT_DATA_TYPE_NAME_IS_REQUIRED
原因: 特定のオブジェクトのデータ・タイプ名がnullか、データ・タイプ名の長さがゼロのため、そのオブジェクトのXMLを作成できませんでした。
処置: 要素のデータタイプ名が指定されていることを確認します。

デプロイ例外

デプロイ例外は、EJBのデプロイ中に問題が検出された場合にスローされる実行時例外です。デプロイ中には、プロジェクト、セッションおよびejb-jarのXMLファイル(またはそれに対応するJavaクラス)が読み取られ、必要なオブジェクトのインスタンス化と初期化が行われます。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-15 デプロイ例外

EXCEPTION [TOPLINK – 14001]: oracle.toplink.ejb.DeploymentException
EXCEPTION DESCRIPTION: No OracleAS TopLink project was specified for this bean.

エラー・コード14001〜14027

エラー・コード: 14001

NO_PROJECT_SPECIFIED
原因: デプロイメント・ディスクリプタからプロジェクト名とクラスのいずれも読み取ることができませんでした。
処置: デプロイメント・ディスクリプタのプロジェクト構成を確認します。project-xmlとproject-classがいずれも指定されていることを再確認します。

エラー・コード: 14003

NO_SUCH_PROJECT_IDENTIFIER
原因: 要求された識別子を持つプロジェクトが存在しません。
処置: プロジェクト名が、プロジェクトXMLファイルに指定されたプロジェクト名と完全に一致することを確認します。

エラー・コード: 14004

ERROR_CREATING_CUSTOMIZATION
原因: DeploymentCustomizationクラスのインスタンスを作成できませんでした。
処置: DeploymentCustomizationインタフェースを実装するクラスの実装を確認します。コンストラクタから始めて、実装の残りの部分に進んでください。

エラー・コード: 14005

ERROR_RUNNING_CUSTOMIZATION
原因: DeploymentCustomization.afterLoginCustomizationメソッドまたはDeploymentCustomization.beforeLoginCustomizationメソッドがコールされたときに、例外がスローされました。
処置: 根本的な原因については、生成された例外を参照してください。DeploymentCustomizationの実装を確認します。

エラー・コード: 14011

ERROR_CONNECTING_TO_DATA_SOURCE
原因: データ・ソースがJNDIに見つからなかったか、正しく指定されていませんでした。
処置: セッションXMLファイルにおけるログイン要素のデータ・ソース属性を確認します。データ・ソースが存在し、正しく構成されていることを確認します。

エラー・コード: 14016

ERROR_CREATING_PROJECT
原因: プロジェクトXMLファイルの名前またはクラスが指定されましたが、プロジェクトの作成中に一般エラーが発生しました。
処置: 根本的な原因については、生成された例外を参照してください。プロジェクトXMLファイルを確認します。

エラー・コード: 14020

ERROR_IN_DEPLOYMENT_DESCRIPTOR
原因: toplink-ejb-jar.xmlの解析中にエラーが発生しました。
処置: 根本的な原因については、生成された例外を参照してください。toplink-ejb-jar.xmlファイルを確認します。

エラー・コード: 14023

CANNOT_FIND_GENERATED_SUBCLASS
原因: 予期しない内部例外がスローされました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 14024

CANNOT_READ_TOPLINK_PROJECT
原因: プロジェクトの読取り中に、予期しない内部例外がスローされました。
処置: 示された例外メッセージを参照してください。

エラー・コード: 14026

MUST_USE_TRANSPARENT_INDIRECTION
原因: プロジェクトに(EJB2.0エンティティBean間の)1対多または多対多のリレーションシップが含まれていますが、そのリレーションシップは透過インダイレクションを使用していません。
処置: EJB2.0エンティティBeanに関係するすべての1対多および多対多リレーションシップに対して、プロジェクトで透過インダイレクションが使用されていることを確認します。

エラー・コード: 14027

MUST_USE_VALUEHOLDER
原因: プロジェクトに(EJB2.0エンティティBean間の)1対1リレーションシップが含まれていますが、そのリレーションシップは基本インダイレクションを使用していません。
処置: EJB2.0エンティティBeanに関係するすべての1対1リレーションシップに対して、プロジェクトで基本インダイレクションが使用されていることを確認します。

同期化例外

同期化例外は、OracleAS TopLinkによる分散セッションへのキャッシュ同期化更新が失敗したときに発生する実行時例外です。この例外が発生した場合、メッセージにはエラー・コードとエラー・メッセージが含まれます。

エラー・コード15001〜15025

エラー・コード: 15001

UNABLE_TO_PROPAGATE_CHANGES
原因: リモート・システムに変更内容を送信する際に、エラーが発生しました。
処置: 原因については、生成された例外を参照してください。

エラー・コード: 15008

ERROR_DOING_LOCAL_MERGE
原因: ローカル共有キャッシュが破損しました。
処置: このサーバーのセッションを再起動するか、初期化します。

エラー・コード: 15010

ERROR_LOOKING_UP_LOCAL_HOST
原因: ローカル・システムのIPアドレスを検出しようとしたときに、IO例外が発生しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 15011

ERROR_BINDING_CONTROLLER
原因: リモート・サービスを登録しようとしたときに、IOエラーが発生しました。
処置: 根本的な原因と解決策については、生成された例外を参照してください。

エラー・コード: 15012

ERROR_LOOKING_UP_CONTROLLER
原因: リモート・サーバーのリモート・サービスが見つかりません。
処置: 根本的な原因については、生成された例外を参照してください。リモート・サーバーが稼働していることを確認します。

エラー・コード: 15013

LOOKING_UP_JMS_SERVICE
原因: 指定したJMSサービスが見つかりません。
処置: JMSサービスのIPアドレスとポートがセッション構成で正しく指定されており、サービスが稼働していることを確認します。

エラー・コード: 15016

ERROR_GETTING_SYNC_SERVICE
原因: セッション構成で指定された同期化サービスを初期化しようとしたときに、エラーが発生しました。
処置: 根本的な原因については、生成された例外を参照してください。サービスがセッション構成で正しく指定されていることを確認します。

エラー・コード: 15017

ERROR_NOTIFYING_CLUSTER
原因: 他のOracleAS TopLinkセッションに接続しようとしたときに、エラーが発生しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 15018

ERROR_JOINING_MULTICAST_GROUP
原因: OracleAS TopLinkクラスタリング・ハンドシェイク・フェーズのマルチキャスト・グループに参加しようとしたときに、エラーが発生しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 15023

ERROR_RECEIVING_ANNOUNCEMENT
原因: OracleAS TopLinkのリモート・セッションからセッション存在通知を受信しようとしたときに、IOエラーが発生しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 15025

FAIL_TO_RESET_CACHE_SYNCH
原因: OracleAS TopLinkのキャッシュの同期化(クラスタへの参加を含む)をリセットするためにコールされた、開発サービスに対するAPIが失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

JDO例外

JDO例外は、Java Data Objectsの使用時にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-16 JDO例外

EXCEPTION [TOPLINK – 16004]: oracle.toplink.exceptions.JDOException
EXCEPTION DESCRIPTION: Cannot execute transactional read query without an active transaction.

エラー・コード16001〜16006

エラー・コード: 16001

OBJECT_IS_NOT_TRANSACTIONAL
原因: オブジェクトが現在アクティブなUnitOfWorkに登録されていなかったため、削除できませんでした。
処置: 指定したオブジェクトを削除する前にUnitOfWorkに登録します。

エラー・コード: 16002

ARGUMENT_OBJECT_IS_NOT_JDO_OBJECTID
原因: 使用されたObjectIdJDOObjectIdではなかったため、オブジェクトをIDで取得できませんでした。
処置: JDOPersistenceManagerを使用する場合は、必ず(ObjectIdではなく)JDOObjectIdを渡すようにします。

エラー・コード: 16003

OBJECT_FOR_ID_DOES_NOT_EXIST
原因: オブジェクトをIDで取得できませんでした。指定したJDOObjectIdを持つオブジェクトが見つかりませんでした。
処置: この例外がアプリケーションで適切に処理されることを確認します。

エラー・コード: 16004

TRANSACTIONAL_READ_WITHOUT_ACTIVE_TRANSACTION
原因: JDOPersistenceManagerがトランザクション読取りで使用されていますが、現在のトランザクションは非アクティブであるため、問合せに失敗しました。
処置: トランザクション読取りを実行する前に、アクティブなトランザクションがあることを確認します。

エラー・コード: 16005

TRANSACTION_IS_ALREADY_ACTIVE
原因: JDOTransactionはすでにアクティブなため、開始できませんでした。
処置: トランザクションを開始しようとする前に、コミットまたはロールバックします。

エラー・コード: 16006

TRANSACTION_IS_NOT_ACTIVE
原因: JDOTransactionはアクティブではないため、コミットまたはロールバックができませんでした。
処置: コミットまたはロールバックを行う前に、トランザクションの状態が別のアプリケーションによって変更されておらず、アクティブであることを確認します。

SDKデータ・ストア例外

SDKデータ・ストア例外は、SDKクラスを使用してOracleAS TopLinkをカスタマイズする際にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-17 SDKデータ・ストア例外

EXCEPTION [TOPLINK – 17001]: oracle.toplink.sdk.SDKDataStoreException
EXCEPTION DESCRIPTION: The OracleAS TopLink SDK does not currently support Cursor.

エラー・コード17001〜17006

エラー・コード: 17001

UNSUPPORTED
原因: メソッドのコールが現在SDKでサポートされていないために失敗しました。
処置: サポートされていないメソッドを使用しないようにします。

エラー・コード: 17002

INCORRECT_LOGIN_INSTANCE_PROVIDED
原因: oracle.toplink.sdk.SDKAccessorのインスタンスが、誤ったタイプのLoginに渡されました(SDKではDatabaseLoginのインスタンスが予期されます)。
処置: SDKベースのアプリケーションが、予期されたタイプのLoginに渡されることを確認します。

エラー・コード: 17003

INVALID_CALL
原因: SDKDescriptorの所有するQueryManagerが初期化されると、未構成のCallのタイプごとにInvalidSDKCallのインスタンスが設定されます。未構成のCallを起動した場合、単にNullPointerExceptionがスローされるのではなく、このINVALID_CALLエラーが記録されます。INVALID_CALLエラーの方が多くの情報を含んでいるためです。
処置: 未構成のCallを使用しないようにするか、SDKベースのアプリケーションでCallの実装を提供します。

エラー・コード: 17004

IE_WHEN_INSTANTIATING_ACCESSOR
原因: java.lang.InstantiationExceptionのために、指定したクラスのインスタンス化に失敗しました。
処置: 指定したクラスがインタフェースまたは抽象クラスではないことを確認します。

エラー・コード: 17005

IAE_WHEN_INSTANTIATING_ACCESSOR
原因: java.lang.IllegalAccessExceptionのために、指定したクラスのインスタンス化に失敗しました。
処置: 指定したクラスがパブリックであることを確認します。VMのセキュリティ設定でJavaリフレクションのパーミッションが設定されていることを確認します。

エラー・コード: 17006

SDK_PLATFORM_DOES_SUPPORT_SEQUENCES
原因: SDKPlatformのサポートされていないメソッドであるbuildSelectSequenceCallまたはbuildUpdateSequenceCallがコールされました。
処置: これらのメソッドまたはサブクラスSDKPlatformを使用しないようにするか、独自の実装でオーバーライドします。

JMS処理例外

JMS処理例外は、Java Message Serviceメッセージの処理中にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-18 JMS処理例外

EXCEPTION [TOPLINK – 18001]: oracle.toplink.exceptions.JMSProcessingException
EXCEPTION DESCRIPTION: Error while processing incomming JMS message.

エラー・コード18001〜18002

エラー・コード: 18001

DEFAULT
原因: 受信JMSメッセージの処理に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 18002

NO_TOPIC_SET
原因: セッションの相互接続用にJMSサービスで作成されたTopicnullのため、JMSClusteringServiceを開始できませんでした。
処置: セッションの相互接続用にJMSサービスで作成されたTopicJMSClusteringServiceに設定されていることを確認します。

SDKディスクリプタ例外

SDKディスクリプタ例外は、SDKクラスを使用してOracleAS TopLinkのディスクリプタをカスタマイズする際にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-19 SDKディスクリプタ例外

EXCEPTION [TOPLINK – 19001]: oracle.toplink.sdk.SDKDescriptorException
EXCEPTION DESCRIPTION: The OracleAS TopLink SDK does not currently support query result ordering.

エラー・コード19001〜19003

エラー・コード: 19001

UNSUPPORTED
原因: メソッドのコールが現在SDKでサポートされていないために失敗しました。
処置: サポートされていないメソッドを使用しないようにします。

エラー・コード: 19002

CUSTOM_SELECTION_QUERY_REQUIRED
原因: SDKObjectCollectionMappingがカスタム選択問合せなしで使用されました。
処置: SDKObjectCollectionMappingにカスタム選択問合せを設定します。

エラー・コード: 19003

SIZE_MISMATCH_OF_FIELD_TRANSLATIONS
原因: マッピング・フィールド名の配列とデータ・ストア・フィールド名の配列の長さが異なります。
処置: フィールド変換配列のサイズは同じになる必要があります。

SDK問合せ例外

SDK問合せ例外は、SDKクラスを使用してOracleAS TopLinkの問合せをカスタマイズする際にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-20 SDK問合せ例外

EXCEPTION [TOPLINK – 20002]: oracle.toplink.sdk.SDKQueryException
EXCEPTION DESCRIPTION: Invalid SDK mechanism state - only one call is allowed.

エラー・コード20001〜20004

エラー・コード: 20001

INVALID_SDK_CALL
原因: 渡されたコールがSDKCallのインスタンスではありません。
処置: SDKCallのインスタンスを使用します。

エラー・コード: 20003

INVALID_SDK_ACCESSOR
原因: SDKQueryに設定されたアクセッサがSDKAccessorのインスタンスではありません。
処置: SDKAccessorを設定します。

エラー・コード: 20004

INVALID_ACCESSOR_CLASS
原因: SDKLogin.setAccessorClassメソッドに、ClassConstants.Accessor_Classで参照されるインタフェースを実装しないクラスが渡されました。
処置: Accessorインタフェースを実装するクラスを渡します。

検出例外

検出例外は、DiscoveryManagerの稼働中にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-21 検出例外

EXCEPTION [TOPLINK – 22001]: oracle.toplink.exception.DiscoveryException
EXCEPTION DESCRIPTION: Could not join multicast group.

エラー・コード22001〜22004

エラー・コード: 22001

ERROR_JOINING_MULTICAST_GROUP
原因: java.io.IOExceptionのために、DiscoveryManagerがマルチキャスト・グループへの参加に失敗しました。MulticastSocketを作成できなかったか、MulticastSocket.joingGroupメソッドの起動に失敗したことが原因です。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 22002

ERROR_SENDING_ANNOUNCEMENT
原因: DiscoveryManagerが、そのサービスの起動を他のサービスに通知できませんでした。
処置: 通知の遅延時間を延長することを検討します。遅延時間とは、このリモート・サービスが使用可能になってから他のDiscoveryManagerにセッション通知が送信されるまでの間、サービスが待機する時間(ミリ秒)です。これは、一部のシステムで接続をネーム・サービスにポストするまでの時間を延長するために必要な場合があります。DiscoveryManager.setAnnouncementDelayメソッドを参照してください。

エラー・コード: 22004

ERROR_RECEIVING_ANNOUNCEMENT
原因: DiscoveryManagerが他のDiscoveryManagerからの通知に対するブロック化中に、java.io.IOExceptionを捕捉しました。
処置: 根本的な原因については、生成された例外を参照してください。

Remote Command Manager例外

Remote Command Manager例外は、リモート・コマンド・モジュールの使用時にスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-22 Remote Command Manager例外

EXCEPTION [TOPLINK – 22104]: oracle.toplink.exceptions.RemoteCommandManagerException
EXCEPTION DESCRIPTION: Could not look up hostname.

エラー・コード22101〜22105

エラー・コード: 22101

ERROR_OBTAINING_CONTEXT_FOR_JNDI
原因: javax.naming.NamingExceptionのために、指定したプロパティを持つJNDIコンテキストの取得に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。コンテキスト検索用のプロパティが正しいことを確認します。

エラー・コード: 22102

ERROR_BINDING_CONNECTION
原因: ローカル・ネーム・サービスでの接続のポストに失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 22103

ERROR_LOOKING_UP_REMOTE_CONNECTION
原因: 指定した名前およびURLを持つリモート接続の検索に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。リモート接続とURLが正しいことを確認します。

エラー・コード: 22104

ERROR_GETTING_HOST_NAME
原因: java.net.InetAddress.getLocalHostメソッドが、指定したホスト名の検索に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。ホストがオンラインかつアクセス可能であることを確認します。

エラー・コード: 22105

ERROR_PROPAGATING_COMMAND
原因: 指定した接続へのコマンドの伝播に失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。生成された例外にCommunicationExceptionが含まれている場合、指定した接続のリモート・ホストがオンラインかつアクセス可能であることを確認します。

XML変換例外

XML変換例外は、OracleAS TopLinkインスタンスとXMLの間の変換が失敗したときにスローされる実行時例外です。この例外は、XMLチェンジ・セットを使用するキャッシュの同期化で使用されます。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-23 XML変換例外

EXCEPTION [TOPLINK – 25001]: oracle.toplink.exceptions.XMLConversionException
EXCEPTION DESCRIPTION: Cannot create URL for file  [\\FILE_SERVER\command.xml].

エラー・コード25001

エラー・コード: 25001

ERROR_CREATE_URL
原因: 指定したファイルのURLの作成に失敗しました。
処置: 指定したファイルが存在し、アクセス可能であることを確認します。

EJB JAR XML例外

EJB JAR XML例外は、デプロイ時にejb-jar XMLファイルが読み取られ、必要なEJBの具象クラス・コードが生成されたときにスローされる実行時例外です。

書式

EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message

例C-24 EJB JAR XML例外

EXCEPTION [TOPLINK – 72000]: oracle.toplink.exceptions.EJBJarXMLException
EXCEPTION DESCRIPTION: Error reading ejb-jar.xml file.

エラー・コード72000〜72023

エラー・コード: 72000

READ_EXCEPTION
原因: java.io.IOExceptionまたはjavax.xml.parsers.ParserConfigurationExceptionのために、ejb-jar XMLファイルの読取りに失敗しました。
処置: 根本的な原因については、生成された例外を参照してください。

エラー・コード: 72001

INVALID_DOC_TYPE
原因: 予期したdoctypeである-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//ENが使用されなかったため、指定したファイルの解析に失敗しました。
処置: ejb-jar XMLファイルで正しいドキュメント・タイプが使用されていることを確認します。

エラー・コード: 72023

NO_CMR_FIELD_FOR_BEAN_ABSTRACT_SETTER
原因: 1対1Bean setterメソッドの本体のコード生成に失敗しました。原因は、DescriptornullDescriptorInheritancePolicyがない、DescriptorInheritancePolicyにnullの親クラスがある、コンテナ管理の関連性のフィールドが定義されていない、のいずれかです。
処置: ejb-jar XMLファイルで、このデプロイメント・ディスクリプタの構成を確認します。