次のようなエラーレポート(ユーザーから)を常に受け取っています。
原因:ステータスコード:400、AWSサービス:AmazonSimpleDB、AWSリクエストID:c5cb109d-bbff-fcea-bc0d-0cb60ff8f6af、AWSエラーコード:RequestExpired、AWSエラーメッセージ:リクエストの有効期限が切れています。タイムスタンプの日付は2012-06-06T13:19:59.415Zです。現在の日付は2012-06-06T14:20:03Zです
どうやらこれは、ユーザーが間違ったタイムゾーンまたは何かを設定しているためですか?とにかく、この特定のエラーをキャッチして、タイムゾーン設定を確認するように求めるメッセージをユーザーに投稿したいと思いますが、それを行う方法が見つかりません。AmazonServiceExceptionをキャッチすると、エラーはnullとして表示されます。
ステータスコードまたはエラーコードに基づいてエラーをキャッチするにはどうすればよいですか?私が試した現在のコードは次のようになります。
try {
dostuff()
} catch (IOException e) {
updateAWS("DownloadErrors");
return "filenotfound";
} catch (AmazonServiceException e) {
return "downloadfail";
}
ただし、AmazonServiceException eは常にnullであるため、そこから情報を取得することはできません。
他のコード:
private void doStuff() throws IOException, AmazonServiceException{
//code here
}