忍者ブログ

「catch (Exception e)でErrorの捕捉が漏れる」の詳細記事: Javaってまだいけますか

Javaってまだいけますか

いっぱいいっぱいで無理なので学んだ事をいちいちメモっていくブログです。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

Navigation

catch (Exception e)でErrorの捕捉が漏れる

アプリケーションで、「ここが全ての例外をハンドリングする最後の関所だ!」みたいなところで

try {

} catch (Exception e) {
// 最終ハンドリング
}


のようにしてExceptionで一括捕捉しようとすることがあるのですが、今さらながらこの場合Errorの捕捉が漏れてしまうことに気づきました。
例えば、以下のようなError。

・OutOfMemoryError
・StackOverflowError

通常、上記のErrorが発生したらもうアプリケーションではどうしようも無いですが、外部システムと連携しているシステムで困ったことがありました。

要は、

・自分とこのシステムはぜんぜん平気
・外部システムを呼び出したらOutOfMemoryErrorが帰ってきた

というようなケースでハンドリングすべき処理ができなかった、といったバグです。

こういった場合、
「外部システムを呼び出す処理においては、ExceptionとError、もしくは一括してThrowableでキャッチして、システム共通例外などに詰め込んで再スローする」
といった考慮が必要だと思いました。

あと、Throwable、Exception、Errorなどについてはこちらのブログ記事がとても参考になりました。
PR

Navigation

「catch (Exception e)でErrorの捕捉が漏れる」にトラックバックする

「catch (Exception e)でErrorの捕捉が漏れる」へのトラックバック

「catch (Exception e)でErrorの捕捉が漏れる」へのコメント

「catch (Exception e)でErrorの捕捉が漏れる」にコメントする

コメント作成

Navigation

Copyright ©  Javaってまだいけますか  All Rights Reserved.
  • 忍者ブログ
  • [PR]

menu

ブログ内検索

カテゴリー

カウンター

忍者アド

リンク

最新CM

[07/17 セバ]
[12/27 NONAME]

最新記事

(10/15)
(10/01)
(08/12)
(08/12)
(08/11)

プロフィール

HN:
takacy.k
年齢:
45
性別:
男性
誕生日:
1979/08/13
趣味:
自己紹介:
個人的なメモですので、投稿内容について真偽を保証するものではありません。また、当ブログの内容をご利用になったことによる(以下略)

最新TB

RSS

アーカイブ

アクセス解析