OracleAS TopLink例外はすべて、RuntimeException
のサブクラスです。TopLinkException
クラスは、すべての実行時例外および開発例外のスーパークラスです。
実行時例外は実行時のエラー条件を示していますが、必ずしも致命的なエラーではありません。データベース接続の障害など、実行時の条件が無効であることを示すものです。実行時例外はすべてtry-catchブロックで処理する必要があります。
実行時にスローされる例外には次のものがあります。
DatabaseException
OptimisticLockException
CommunicationException
開発例外は、コードの一部が無効であることを示しています。開発例外の中には、実行時の条件に依存しないものがあります。したがって、開発例外はすべてアプリケーションをデプロイする前に解決することが必要です。たとえば、ディスクリプタまたはマッピングのプロパティに誤りのあるアプリケーションを初めて初期化したときには、DescriptorException
がスローされます。開発例外は、ディスクリプタ内の非一貫性を発見するためのデバッグ・ツールとして有効です。開発例外は異常な動作を表しているため、try-catchブロックでは処理しないでください。
次の例外は、実行時の条件に依存していません。これらの例外のいずれかがスローされた場合、テスト対象のアプリケーション・コードは無効であり、変更する必要があります。これらの例外は処理しないようにしてください。
DescriptorException
BuilderException
ConcurrencyException
ConversionException
QueryException
ValidationException
どの例外からも、例外名と例外の原因を説明するメッセージが返されます。表示されるメッセージは、例外のタイプを反映しています。
OracleAS TopLink例外には、次の情報が含まれています。
OracleAS TopLink例外の名前
エラーの最も可能性が高い原因の説明
ネイティブ・エラー・コード
OracleAS TopLinkでは、例外のエラー・コードとして使用可能な範囲の番号がすべて使用されるわけではありません。表C-1は、使用される可能性のある範囲を示しています。
表C-1 OracleAS TopLink例外のエラー・コードの範囲
例外 | エラー・コードの範囲 |
---|---|
ディスクリプタ例外 | 1〜199 |
ビルダー例外 | 1001〜2000 |
並行性例外 | 2001〜3000 |
変換例外 | 3001〜4000 |
データベース例外 | 4001〜5000 |
オプティミスティック・ロック例外 | 5001〜6000 |
問合せ例外 | 6001〜7000 |
検証例外 | 7001〜8000 |
EJB QL例外 | 8001〜8999 |
セッション・ローダー例外 | 9000〜10000 |
EJB例外ファクトリ | 10001〜11000 |
キャッシュ同期化通信例外 | 11001〜12000 |
通信例外 | 12001〜13000 |
XMLデータ・ストア例外 | 13001〜14000 |
デプロイ例外 | 14001〜15000 |
同期化例外 | 15001〜16000 |
JDO例外 | 16001〜17000 |
SDKデータ・ストア例外 | 17001〜18000 |
JMS処理例外 | 18001〜19000 |
SDKディスクリプタ例外 | 19001〜20000 |
SDK問合せ例外 | 20001〜21000 |
検出例外 | 22000〜22100 |
Remote Command Manager例外 | 22101〜22200 |
XML変換例外 | 25001〜26000 |
EJB JAR XML例外 | 72001〜73000 |