以下のサブトピックでは、テスト・サーバーの再始動が必要になる可能性のある通常とは異なった場合について説明します。このトピックの最後にある表に、そのような場合をまとめてあります。
開発環境では、ユーザーがサーバーでアプリケーション実行中に、サーバー上でアプリケーションのデバッグをするときなど、アプリケーションを変更をしたい場合があります。このとき、サーバーを再始動しなくても変更されたコードを動的に再ロードできる場合もあります。変更されたリソースのタイプ、およびサーバーのタイプによって、プログラムの状態が失われる場合と保たれる場合があります。
サーバー上でアプリケーションの実行中にコードを変更すると、 コードが自動または手動で再ロードされるまで、 Java™ 仮想計算機は初期コードを実行し続けます。 例えば、JSP ソースを変更することが可能で、その変更内容は自動的にサーバーへ再ロードされます。 Tomcat 1 上で実行されている Java クラスなど、その他のリソースの場合、 サーバーに変更を認識させるには、サーバーを再始動する必要があります。
サーバーの実行中にサーバーおよびサーバー構成に対し、変更 (例えば、ポート番号の変更) を行った場合は、サーバーを再始動する必要があります。
サーバーの実行中に、JSP ファイル、HTML ファイル、GIF ファイル、JPG ファイル、または類似のリソースに対して変更を行い、サーバーの実行中にファイルを保管した場合、 Web ブラウザーを最新表示しさえすれば、 サーバーに変更を認識させることができます。 プログラムの状態は失われません。
サーブレットをサーバーの実行中に変更してファイルを保管した場合は、 使用中のアプリケーションで再ロードが可能になっていれば、サーブレットは再ロードされます。 サーバーでホット・メソッド置換を使用可能にしてある場合、ブラウザーを最新表示する必要なく 変更内容は自動的に反映されます。ホット・メソッド置換を使用不可にしてある場合は、Web ブラウザーを 最新表示すると、サーバーは変更を認識し、アプリケーションの状態は 失われません。そのプロジェクトのセッション・データは失われますが、 アプリケーション内のその他のプロジェクトの状態は変更されません。 「ナビゲーター」ビューの、プロジェクトのポップアップ・メニューから、 該当するプロジェクトを再開することができます。 WebSphere Application Server v5.x 2 の場合、再ロードが使用可能になっていなければ EAR を 再開しなければなりません。Tomcat を実行していて、再ロードが使用可能になっていない場合は、 サーバーを再始動する必要があります。
WebSphere Application Server の場合、上記の規則は、 Web プロジェクトのすべての従属クラスやデプロイメント記述子に適用されます。 WebSphere Application Server 上で実行されている、web.xml デプロイメント記述子の セキュリティーまたはログイン構成プロパティーを変更した場合は、 サーバーを再始動する必要があります。 Tomcat の場合、これらの変更に対して、いずれもサーバーの再始動が必要になります。
サーバーの実行中に新規サーブレット、従属クラス、 または JSP ファイルを Web プロジェクトに追加した場合は、再ロードを可能にしていれば、変更が認識されます。 再ロードを可能にしていない場合に、WebSphere Application Server を実行しているときは EAR プロジェクト、Tomcat を実行しているときはサーバーをそれぞれ再始動する必要があります。 デバッグ・モードでホット・コード置換を使用可能にしている場合、Java クラスに対する変更は自動的に認識されます。
WebSphere Application Server の場合、 サーバーは EAR 内の EJB プロジェクトを動的に再開します。デバッグ・モードでホット・コード置換を 使用可能にしている場合、Java クラスに対する変更は自動的に認識されます。
WebSphere Application Server の場合、 サーバーで実行中にエンタープライズ・アプリケーション・プロジェクト内のいずれかのリソースを変更したときは、 サーバーは動的に EAR を再開します。 Tomcat は、エンタープライズ・アプリケーション・プロジェクトのテストおよび公開をサポートしていません。
WebSphere Application Server v6.0 の場合、WebSphere Enhanced EAR エディター内でいずれかのリソースを変更したときは、サーバーを再始動し、アプリケーションを再公開する必要があります。 WebSphere Enhanced EAR エディターは、アプリケーション・デプロイメント記述子エディターのデプロイメント・ページです。
変更されたリソース | 必要な処置 | |||
---|---|---|---|---|
WebSphere Application Server | Apache Tomcat | WebSphere Application Server - Express | ||
サーバー構成 |
|
サーバーを再始動 | サーバーを再始動 | |
JSP | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | |
サーブレット | ホット・メソッド置換は使用可能 | 自動 | 自動 | 自動 |
再ロード使用可能 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | |
再ロード使用不可 | EAR プロジェクトまたはサーバーを再始動 | サーバーを再始動 | EAR プロジェクトまたはサーバーを再始動 | |
従属クラス* またはデプロイメント記述子 | ホット・メソッド置換は使用可能 | 自動 | 自動 | 自動 |
再ロード使用可能 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | |
再ロード使用不可 | EAR プロジェクトまたはサーバーを再始動 | サーバーを再始動 | EAR プロジェクトまたはサーバーを再始動 | |
EJB 実装 | 自動的に再ロード | 非サポート | 非サポート | |
ホット・メソッド置換が使用可能な場合: 再ロードなしの自動 | ||||
EJB インターフェースまたはインターフェースの従属クラス | 自動的に再ロード。アプリケーション・クライアントが EJB 参照を保持している場合は、アプリケーション・クライアントを再開する。 | 非サポート | 非サポート | |
EJB 従属クラス* またはデプロイメント記述子 | 自動的に再ロード | 非サポート | 非サポート | |
*ホット・メソッド置換が使用可能な場合: 自動的に置換 | ||||
追加された EJB または従属クラス | 自動的に再ロード | 非サポート | 非サポート | |
ホット・メソッド置換が使用可能な場合: 自動的に置換 | ||||
EAR ファイル | 自動的に再ロード | 非サポート | 非サポート | |
Web ブラウザーの最新表示 | ||||
WebSphere Enhanced EAR | V6.0: サーバーの再始動とアプリケーションの再公開 | 非サポート | 非サポート |