Interstage Application Server/Interstage Web Server メッセージ集 |
目次 |
第4部 ログファイルに出力されるメッセージ | > 第45章 Interstage管理コンソール用Servletサービスのメッセージ | > 45.1 サーブレット・コンテナのメッセージ |
Servletサービスでよく発生するJavaのExceptionやError、アプリケーションが異常終了する要因について説明します。
サーブレットまたはJSPが異常終了した場合、サーブレット・コンテナの標準出力・標準エラー出力のログ、サーブレットのログ、サーブレット・コンテナのログまたはブラウザにJavaのスタックトレースが出力されます。
考えられる原因と対処を以下に示します。
なお、ここで述べる原因とは、当該Exceptionが発生する引き金となる根本原因を指します。
また、複数のExceptionが同時に発生している場合は、「Root cause:」のExceptionの対処を行ってください。
ここでのメッセージは、メッセージの内容を直接参照してください。
BindException
[原因]
サーブレット・コンテナ環境定義ファイルに設定したサーブレット・コンテナのクラス定義のIPアドレス、ポート番号への接続に失敗しています。
ポートが使用中であるか、IPアドレスの割り当てに失敗している可能性があります。
[ユーザの対処]
Interstage管理コンソール用のポート番号が使用中でないことを確認してください。
現在使用中のポートについては、netstatコマンドで確認できます。netstatコマンドについてはOSのマニュアルおよびヘルプを参照ください。
コンテナの標準出力、標準エラー出力のログに以下のメッセージが出力された場合には、“起動ログおよびコンテナの標準出力、標準エラー出力のログメッセージ”を参照してください。
FATAL: java.net.BindException: Address in use: bind
java.net.BindException: Address in use: bind
または
FATAL: java.net.BindException: Cannot assign requested address: JVM_Bind
java.net.BindException: Cannot assign requested address: JVM_Bind
ClassCastException
[原因]
サーブレットまたはJSPのリロードにより、Webブラウザとのセション情報の不整合が発生しました。
[ユーザの対処]
Webブラウザを修了し、セション管理を最初からやり直してください。
java.io.IOException
[原因]
コンテナの標準出力、標準エラー出力のログに以下のメッセージが出力された場合には、“起動ログおよびコンテナの標準出力、標準エラー出力のログメッセージ”を参照してください。
HANDLER THREAD PROBLEM: java.io.IOException: Stream broken
java.io.IOException: Stream broken
その他の場合、サーブレット・コンテナがレスポンスを送信中にサーブレット・ゲートウェイ−サーブレット・コンテナ間のソケットが切断されたことにより発生することがあります。
ゲートウェイがコンテナの応答処理の完了を待たずにソケットを切断するタイミングは以下のとおりです。
[ユーザの対処]
この場合、クライアントアプリケーションからの中断であり、サーバ上の異常を示すものではありません。この場合IOExceptionが出力される要因は以下のものがあります。
なお、これらのIOExceptionは、ゲートウェイによるクライアントアプリケーションのソケット切断の検出タイミング(ネットワークの状態によって異なる)とコンテナによるソケットへの書き出しタイミングに依存するため、必ず発生するものではありません。
NoClassDefFoundError
[原因]
実行しようとしたクラスファイルが見つかりません。
[ユーザの対処]
CLASSPATHの設定を見直してください。
[原因]
原因の切り分け調査には、サーブレット・コンテナのヒープ使用状況を確認できるjheapコマンドが使用できます。jheapコマンドを使用する際に必要なサーブレット・コンテナのプロセスIDは、jscontdispコマンドで確認できます。
jheapコマンドの使用方法については、“トラブルシューティング集”の“Javaツール機能”−“jheap”を参照してください。
[ユーザの対処]
ServletException
[原因]
サーブレット内部でExceptionが発生しました。
[ユーザの対処]
このExceptionの後に出力されている「Root cause:」のExceptionの対処を行ってください。
目次 |