ページの先頭行へ戻る
Interstage Application Server V12.0.0 Java EE 7 設計・構築・運用ガイド
FUJITSU Software

12.3.3 アプリケーションの運用に関する異常

以下のトラブルについて対処方法を説明します。

IJServerクラスタ起動時、および運用時にアプリケーションでエラーが発生した場合

IJServerクラスタ起動時、および運用時にアプリケーションでエラーが発生した場合、アプリケーションがJava EE規約に準拠していない可能性があります。


アプリケーションの再配備時、または配備解除時の不整合

アプリケーションの再配備時、または配備解除時に、以下が出力された場合、Interstage Java EE 7 DASサービスの内部情報に不整合が発生している可能性があります。

本問題が発生した場合は以下の手順でリカバリを行ってください。

  1. アプリケーションを配備

  2. アプリケーションを配備解除

  3. 再配備の場合:アプリケーションを配備


運用時にアプリケーションの応答がない場合、遅延が発生した場合

Enterprise Beanごとのスレッドプール設定を行わず、デフォルトスレッドプールを使用している場合、EJBアプリケーションの呼出しが多くなると、応答がない現象や処理遅延が発生することがあります。

IIOP通信によるリモートアクセスを行う場合の環境設定」を参照し、Enterprise Beanごとのスレッドプール設定を行ってください。


アプリケーション内のクラスファイルやリソースファイルの参照に失敗する場合

アプリケーションがロードされたクラスローダからクラスファイルやリソースファイルが参照できない可能性があります。「2.22 クラスローダ」を参照し、アプリケーションがロードされたクラスローダからクラスファイルやリソースファイルが参照できるか確認してください。

アプリケーション内のクラスファイルが参照されずInterstageが内包しているクラスファイルが参照されている場合、「2.22.3 Webクラスローダの委譲モデルの変更」を参考にWebクラスローダの委譲モデルの変更を検討してください。

ロードに失敗するクラスが「2.22.3 Webクラスローダの委譲モデルの変更」の「委譲の例外」に当たる場合、Interstageが内包しているクラスファイルで動作するようにアプリケーションを改修してください。

参考

ロードされたクラスを確認するにはJava VMオプションに-verbose:classを指定してください。ロードされたクラスの情報はJava VMログ(console.log)に出力されます。


ートリロード機能が有効な状態でアプリケーションを配備した時サーバーログにNullPointerExceptionが出力された場合

NullPointerExceptionのメッセージに以下の文字列が含まれている場合は対処の必要がありません。

"_ThreadName=DynamicReloader;"

メッセージに上記の文字列が含まれていないときは、アプリケーションが原因の可能性があります。前後のエラーメッセージを参照し対処してください。


アプリケーションのオートリロードを実行した時にコンソールログにOutOfMemoryErrorが出力された場合

オートリロードを行ったときに、Interstage Java EE 7 DAS サービスでメタスペースが足りなくなりOutOfMemoryErrorが発生した場合は、以下の対処を行ってください。

また、「6.1.2 Java VMのヒープ領域サイズ/メタスペースサイズ」を参照し、メタスペースサイズを大きくしてください。


アプリケーションの実行に失敗する場合

要求を受け付けるバーチャルホストを設定後、Webブラウザにステータスコード「404 Not Found」が通知される

要求を受け付けるバーチャルホストを設定後、Webブラウザにステータスコード「404 Not Found」が通知される場合、設定した値が正しくない可能性があります。要求を受け付けるバーチャルホストに、以下のような値が設定されていないか確認してください。

設定されていた場合、一度Webサーバとの連携を解除し、再度連携する際に正しい形式で要求を受け付けるバーチャルホストを設定してください。


HTTPリスナーのポート番号やシステムプロパティHTTP_LISTENER_PORTの変更後、Webブラウザにステータスコード「500 Internal Server Error」や「404 Not Found」が通知される、または接続できない旨が表示される

ロケールの変更に起因して、配備済みのアプリケーションが消える現象が発生した場合

6.22 ロケールの設定」時にアプリケーションが配備されていた可能性があります。

本問題が発生した場合は以下の手順でリカバリを行ってください。

  1. 配備済みのアプリケーションを配備解除します。配備解除した後、下記のディレクトリを手動で削除してください。
    <Java EE 7 共通ディレクトリ>/domains/domain1/applications/<アプリケーション名>

  2. Java EE 7 共通ディレクトリ配下にお客様が独自にファイルを配置し、そのファイル名がマルチバイト文字を含む場合、ファイル名のエンコードを変更後のロケールに合わせてください。

  3. 手順1で配備解除したアプリケーションを配備しなおしてください。


Interstage Java EE 7 DASサービスや起動状態のIJServerクラスタをターゲットに指定したアプリケーションの配備解除時に、サーバーログにエラーメッセージが出力された場合

出力されたエラーメッセージのエラー種別がSEVEREでメッセージ内容が下記の場合は、アプリケーションの配備解除を行ったターゲットを再起動してください。再起動後、再度配備解除を行う必要はありません。

The web application [<アプリケーション名>] created a ThreadLocal with key of type <詳細情報> and a value of type <詳細情報> but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.

上記以外の場合は、メッセージの内容に従い対処してください。


アプリケーションの配備に失敗する場合

server.logにOutOfMemoryErrorが表示されアプリケーションの配備に失敗す

Javaヒープ領域が不足している場合に発生します。「12.18 OutOfMemoryErrorがログに出力された場合」を参照し、Javaヒープのサイズを大きくした後に、アプリケーションを配備してください。