

 AWS SDK for Java 1.x は 2025 年 12 月 31 日にend-of-supportしました。新しい機能、可用性の向上、セキュリティ更新のために、[AWS SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/home.html) に移行することをお勧めします。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 例外処理
<a name="java-dg-exceptions"></a>

が例外を AWS SDK for Java スローする方法とタイミングを理解することは、 SDK を使用して高品質のアプリケーションを構築する上で重要です。以下のセクションでは、SDK によってスローされる例外のさまざまなケース、および例外の適切な処理方法について説明します。

## 非チェック例外を使用する理由
<a name="why-unchecked-exceptions"></a>

は、次の理由により、チェック例外の代わりにランタイム (または未チェック) 例外 AWS SDK for Java を使用します。
+ 懸念がない場合には例外ケースの処理を強制的に適用せずに (さらにコードを冗長にすることなく)、開発者がエラーを細かく制御できるようにするため。
+ サイズの大きいアプリケーションで、チェック例外に関連する拡張性の問題が発生するのを防ぐため。

一般的に、チェック例外は小規模なアプリケーションでは役立ちますが、アプリケーションのサイズが大きくなり、複雑化すると、チェック例外が問題となる場合があります。

チェック例外と非チェック例外の使用方法の詳細については、以下を参照してください。
+  [非チェック例外に関する論争](http://docs.oracle.com/javase/tutorial/essential/exceptions/runtime.html) 
+  [チェック例外に関連する問題点](http://www.artima.com/intv/handcuffs2.html) 
+  [Java のチェック例外の誤り (およびその対処方法)](http://radio-weblogs.com/0122027/stories/2003/04/01/JavasCheckedExceptionsWereAMistake.html) 

## AmazonServiceException (およびサブクラス)
<a name="amazonserviceexception-and-subclasses"></a>

 [AmazonServiceException](https://docs.aws.amazon.com/sdk-for-java/v1/reference/com/amazonaws/AmazonServiceException.html) は、 AWS SDK for Javaを使用する場合に最も多く発生する例外です。この例外は、 AWS のサービスからのエラーレスポンスを表します。たとえば、存在しない Amazon EC2 インスタンスを終了しようとすると、EC2 はエラーレスポンスを返し、そのエラーレスポンスのすべての詳細がスロー`AmazonServiceException`される に含まれます。場合によっては、`AmazonServiceException` のサブクラスがスローされ、開発者は catch ブロックを使用して、エラーケースの処理を細かく制御できるようになります。

が発生すると`AmazonServiceException`、リクエストは に正常に送信されました AWS のサービス が、正常に処理できなかったことがわかります。これは、リクエストのパラメータに含まれるエラーまたはサービス側の問題が原因です。

 `AmazonServiceException` では次のような情報がわかります。
+ 返された HTTP ステータスコード
+ 返された AWS エラーコード
+ サービスからの詳細なエラーメッセージ
+  AWS 失敗したリクエストのリクエスト ID

 `AmazonServiceException` には、失敗したリクエストが発信者の障害 (不正な値を含むリクエスト) であるか、 AWS のサービスの障害 (内部サービスエラー) であるかに関する情報も含まれています。

## AmazonClientException
<a name="amazonclientexception"></a>

 [AmazonClientException](https://docs.aws.amazon.com/sdk-for-java/v1/reference/com/amazonaws/AmazonClientException.html) は、 へのリクエストの送信中またはレスポンスの解析 AWS 中に、Java クライアントコード内で問題が発生したことを示します AWS。`AmazonClientException` は通常、 よりも深刻であり`AmazonServiceException`、クライアントが のサービス呼び出しを実行できない大きな問題を示します AWS 。たとえば、いずれかのクライアントで オペレーションを呼び出そうとすると、ネットワーク接続が利用`AmazonClientException`できない場合、 は を AWS SDK for Java スローします。