当需要重新启动测试服务器时

下列子主题描述了可能需要重新启动服务器的不同情况。

在开发环境中,您可能要在应用程序在服务器上运行时对其进行更改,例如,如果您要在服务器上调试应用程序。在某些情况下,您可以动态重新装入所修改的代码,而无需重新启动服务器。您可能会丢失程序的状态,具体取决于所修改的资源的类型以及服务器的类型。

当应用程序正在服务器上运行并且您要更改代码时,Java™ 虚拟机会保持运行初始代码,直到自动或手动重新装入该代码为止。例如,您可以修改 JSP 源代码,且会在服务器上自动重新装入这些更改。对于其他资源(例如,运行在 Tomcat 上的 Java 类),必须重新启动服务器以确保该服务器识别更改。

对服务器配置的更改

如果在服务器处于运行状态时更改服务器或服务器配置(例如,如果更改端口号),那么需要重新启动服务器。

对 JSP、HTML、图形以及非 Java 文件的更改

您对 JSP、HTML、GIF、JPG 或类似资源文件的任何更改;在服务器运行过程中保存文件时,必须在服务器上发布该应用程序。如果对资源文件的更改是已链接资源,那么进行发布尤其重要,该已链接资源可能是存储在工作空间外部的文件系统中某些位置的文件或文件夹。工作台或服务器检测不到对已链接资源的更改,因为这些更改发生在工作空间外部。

要在服务器上发布应用程序,如果启用了在启动服务器时自动发布复选框(可从窗口 > 首选项 > 服务器 > 启动页面访问该复选框),那么您可以等待自动发布时间间隔耗尽。但是,如果取消选中在启动服务器时自动发布复选框,那么必须手动发布应用程序(在“服务器”视图中右键单击服务器并选择发布)。发布完成之后,刷新服务器的 Web 浏览器以识别更改。应用程序的状态将不会丢失。
提示: 在开发期间的任何时刻,如果您注意到未在服务器上更新对静态资源所做的更改并且已取消选中在启动服务器时自动发布复选框,请通过在“服务器”视图中右键单击服务器并选择发布来尝试运行手动发布。发布完成之后,刷新 Web 浏览器并且更改将更新在服务器上。

有关自动或手动发布至服务器的更多信息,请参阅发布应用程序主题。

对 servlet 和相关类的更改

如果在服务器处于运行状态时更改 Servlet 并保存文件,那么将重新装入该 Servlet(如果已启用该应用程序的重新装入)。 当服务器运行热方法替换时1,更改将自动发生,而无需刷新浏览器。在服务器上发布应用程序时,该服务器将识别更改。 如果刷新 Web 浏览器,那么应用程序的状态将不会丢失。

要在服务器上发布应用程序,您可以等待自动发布时间间隔耗尽,也可以手工发布应用程序(在“服务器”视图中右键单击服务器并选择发布)。有关自动或手动发布至服务器的更多信息,请参阅发布应用程序主题。该项目的会话数据已丢失,但应用程序内其他项目的状态保持不变。您可以从“导航器”视图的菜单中重新启动项目。如果正在运行 Tomcat 并且尚未启用重新装入功能,那么需要重新启动服务器。

对于 WebSphere Application Server,这些规则还适用于 Web 项目的任何相依类或部署描述符。如果修改正在 WebSphere Application Server 上运行的 web.xml 部署描述符的安全性或登录配置属性,那么需要重新启动服务器。对于 Tomcat,任何这些更改都要求重新启动服务器。

添加 servlet、类或 JSP 文件

如果在服务器运行时向 Web 项目添加 Servlet、相依类或 JSP 文件,那么将识别更改(如果已启用重新装入)。 如果未启用重新装入,那么需要发布应用程序并重新启动 EAR 项目(如果您正在运行 WebSphere Application Server),或者发布应用程序并重新启动服务器(如果正在运行 Tomcat)。 要在服务器上发布应用程序,您可以等待自动发布时间间隔耗尽,也可以手工发布应用程序(在“服务器”视图中右键单击服务器并选择发布)。有关自动或手动发布至服务器的更多信息,请参阅发布应用程序主题。当服务器在调试方式下运行热方法替换功能时,将自动识别对 Java 类所做的更改。

对 EJB 资源的更改

对于 WebSphere Application Server,服务器将动态重新启动 EAR 中的 EJB 项目。当服务器在调试方式下运行热方法替换功能时,将自动识别对 Java 类所做的更改。

切记: Tomcat 不支持 EJB 测试和发布。

对企业应用程序项目内的资源的更改

对于 WebSphere Application Server,如果在企业应用程序项目正在服务器上运行时更改了该项目中的任何资源,那么服务器将自动重新启动 EAR。Tomcat 不支持企业应用程序项目测试和发布。

表 1. 在服务器正在运行的情况下修改资源时要执行的操作的总结. 表 1 描述了在服务器处于运行状态的情况下修改资源时,用户需要采取的操作。
修改的资源 必需的操作
  WebSphere Application Server Apache Tomcat 服务器 WebSphere Application Server Express®
无法刷新服务器配置, 与独立 WebSphere Application Server 的行为相同;有关详细信息,请参阅 WebSphere Application Server 信息中心 重新启动服务器 重新启动服务器
JSP 刷新 Web 浏览器 刷新 Web 浏览器 刷新 Web 浏览器
servlet 启用重新装入 刷新 Web 浏览器 刷新 Web 浏览器 刷新 Web 浏览器
禁用重新装入 重新启动 EAR 项目或服务器 重新启动服务器 重新启动 EAR 项目或服务器
相关类或部署描述符 启用重新装入 刷新 Web 浏览器 刷新 Web 浏览器 刷新 Web 浏览器
禁用重新装入 重新启动 EAR 项目或服务器 重新启动服务器 重新启动 EAR 项目或服务器
EJB 实现 自动重新装入 不支持 不支持
EJB 接口或接口的从属类 自动重新装入。如果应用程序客户机拥有对 EJB 的引用,那么重新启动应用程序客户机。 不支持 不支持
EJB、相依类或部署描述符 自动重新装入 不支持 不支持
添加了 EJB 或从属类 自动重新装入 不支持 不支持
EAR 文件 自动重新装入 不支持 刷新 Web 浏览器
注: 对于 WebSphere Application Server,热方法替换功能将自动在调试方式下运行。
1 提示:对于 WebSphere® Application Server,热方法替换方式自动在调试方式下运行。
指示主题类型的图标 概念主题
信息中心的条款和条件 | 反馈

时间戳记图标 最近一次更新时间: 2014 年 4 月 17 日

文件名:csrvdbg.html