開発環境では、ユーザーがサーバーでアプリケーション実行中に、サーバー上でアプリケーションのデバッグをするときなど、アプリケーションを変更をしたい場合があります。このとき、サーバーを再始動しなくても変更されたコードを動的に再ロードできる場合もあります。変更されたリソースのタイプ、およびサーバーのタイプによって、プログラムの状態が失われる場合と保たれる場合があります。
サーバー上でアプリケーションの実行中にコードを変更すると、 コードが自動または手動で再ロードされるまで、 Java™ 仮想計算機は初期コードを実行し続けます。 例えば、JSP ソースを変更することが可能で、その変更内容は自動的にサーバーへ再ロードされます。 その他のリソース (例えば、Tomcat1 上で実行されている Java クラスなど) の場合は、サーバーを再起動して、変更を確実に認識させる必要があります。
サーバーの実行中にサーバーおよびサーバー構成に対し、変更 (例えば、ポート番号の変更) を行った場合は、サーバーを再始動する必要があります。
サーバーの実行中に、JSP ファイル、HTML ファイル、GIF ファイル、JPG ファイル、または類似のリソースに対して変更を行い、サーバーの実行中にファイルを保管した場合は、サーバーでアプリケーションを公開してから Web ブラウザーを最新表示して、サーバーに変更を認識させる必要があります。プログラムの状態は失われません。 サーバーでアプリケーションを公開するには、自動公開間隔が経過するまで待機するか、手動でアプリケーションを公開 (「サーバー」ビューでサーバーを右クリックし、「公開」を選択) します。 自動または手動でのサーバーへの公開について詳しくは、『アプリケーションの公開』トピックを参照してください。
サーブレットをサーバーの実行中に変更してファイルを保管した場合は、 使用中のアプリケーションで再ロードが可能になっていれば、サーブレットは再ロードされます。 サーバーでホット・メソッド置換を使用可能にしてある場合、ブラウザーを最新表示する必要なく 変更内容は自動的に反映されます。
ホット・メソッド置換を使用不可にしてある場合は、サーバーでアプリケーションを公開してから Web ブラウザーを最新表示すると、サーバーは変更を認識し、アプリケーションの状態は 失われません。 サーバーでアプリケーションを公開するには、自動公開間隔が経過するまで待機するか、手動でアプリケーションを公開 (「サーバー」ビューでサーバーを右クリックし、「公開」を選択) します。 自動または手動でのサーバーへの公開について詳しくは、『アプリケーションの公開』トピックを参照してください。そのプロジェクトのセッション・データは失われますが、 アプリケーション内のその他のプロジェクトの状態は変更されません。 「ナビゲーター」ビューの、プロジェクトのポップアップ・メニューから、 該当するプロジェクトを再開することができます。 WebSphere Application Server v5.12 の場合は、 再ロードが使用可能になっていなければ 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.x の場合に、WebSphere Enhanced EAR エディター内でいずれかのリソースを変更した場合は、サーバーを再始動し、アプリケーションを再公開する必要があります。 WebSphere Enhanced EAR エディターは、アプリケーション・デプロイメント記述子エディターのデプロイメント・ページです。
変更されたリソース | 必要な処置 | |||
---|---|---|---|---|
WebSphere Application Server | Apache Tomcat | WebSphere Application Server - Express | ||
サーバー構成 | v5.1 サーバー: サーバーを再始動 | サーバーを再始動 | サーバーを再始動 | |
v6.x: 独立型の WebSphere Application Server と同じ動作、詳細については、WebSphere Information Center を参照してください。 | ||||
JSP | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | |
サーブレット | ホット・メソッド置換は使用可能 | 自動 | 自動 | 自動 |
再ロード使用可能 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | |
再ロード使用不可 | EAR プロジェクトまたはサーバーを再始動 | サーバーを再始動 | EAR プロジェクトまたはサーバーを再始動 | |
従属クラスまたはデプロイメント記述子 | ホット・メソッド置換は使用可能 | 自動 | 自動 | 自動 |
再ロード使用可能 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | Web ブラウザーの最新表示 | |
再ロード使用可能 | EAR プロジェクトまたはサーバーを再始動 | サーバーを再始動 | EAR プロジェクトまたはサーバーを再始動 | |
EJB 実装 | 自動的に再ロード | 非サポート | 非サポート | |
ホット・メソッド置換が使用可能な場合: 再ロードなしの自動 | ||||
EJB インターフェースまたはインターフェースの従属クラス | 自動的に再ロード。アプリケーション・クライアントが EJB 参照を保持している場合は、アプリケーション・クライアントを再開する。 | 非サポート | 非サポート | |
EJB 従属クラスまたはデプロイメント記述子 | 自動的に再ロード | 非サポート | 非サポート | |
ホット・メソッド置換が使用可能な場合: 自動的に置換 | ||||
追加された EJB または従属クラス | 自動的に再ロード | 非サポート | 非サポート | |
ホット・メソッド置換が使用可能な場合: 自動的に置換 | ||||
EAR ファイル | 自動的に再ロード | 非サポート | Web ブラウザーの最新表示 | |
アプリケーション・デプロイメント記述子エディターの「デプロイメント」ページ | v6.x サーバー: サーバーを再始動してアプリケーションを再公開 | 非サポート | 非サポート |