更新企业应用程序包括将新的文件或模块添加至已安装的 Java™ Platform、Enterprise Edition (Java
EE) 应用程序,或者替换或移除已安装的应用程序、文件或模块。
开始之前
在服务器上更新应用程序文件前,请确保这些文件已在可部署模块中进行汇编。
接着,请参阅更新企业应用程序文件的方法并决定如何更新应用程序文件。可以使用管理控制台、使用
wsadmin 工具或通过 Java MBean 编程来更新企业应用程序或模块。这些方法提供了类似的更新功能。
此外,确保已更新文件可安装到您的部署目标。
关于此任务
这些步骤描述如何使用管理控制台来更新已部署的应用程序或模块。
过程
- 备份已安装的应用程序或模块。
- 转至管理控制台的“企业应用程序”页面。
在控制台导航树中,单击。
- 将应用程序导出到 EAR 文件或导出应用程序中的文件。
选择要导出的应用程序,然后单击导出或导出文件。导出操作将保留绑定信息。
- 在“企业应用程序”页面上选择应用程序,然后单击“更新”。 将显示“准备应用程序更新”页面。
- 在指定要上载并安装的 EAR、WAR、JAR、RAR 或 SAR 模块下:
- 确保要更新的应用程序指的是要更新的应用程序。
- 在应用程序更新选项下,选择要更新的已安装的应用程序、模块或文件。
联机帮助准备应用程序更新设置提供了有关选项的详细信息。
避免故障: 不能使用
替换或添加单个文件或
替换、添加或删除多个文件更新选项来添加、移除或修改
Java Application Programming Interface (API) for XML-Based Web Services (JAX-WS) 注释。这些选项更改单个文件或部分应用程序。如果使用这些选项中的任一选项来更改 JAX-WS 注释,那么本产品将不返回错误。但是,您可能会在部署注释 Web Service 时遇到问题。
gotcha
- 如果选择了替换整个应用程序或替换或添加单个模块选项:
- 单击下一步显示更新应用程序文件的向导。
- 完成在更新向导中的步骤。
此更新向导与安装向导类似,它提供了用于指定或编辑应用程序绑定信息的字段。有关指南,请参阅使用控制台安装应用程序及“准备应用程序安装”绑定设置页面的信息。
注意,安装步骤已将新版本的绑定信息与旧版本的绑定信息合并。如果新版本具有应用程序工件(例如
Enterprise JavaBeans (EJB) Java 命名和目录接口
(JNDI) 名称、EJB 引用或资源引用)的绑定,那么这些绑定将成为合并的绑定信息的一部分。如果新绑定不存在,那么从已安装(旧)版本获得绑定。如果旧版本中不存在绑定,而且如果缺省绑定生成选项已启用,那么缺省绑定将作为已合并绑定信息的一部分。
您可选择是忽略旧版本中的绑定,还是新版本中的绑定。
- 单击完成。
- 如果未使用更新向导的“管理模块”页面,那么在更新应用程序后,将已安装的应用程序或模块映射至服务器或集群。
使用从“企业应用程序”页面访问的页面。
- 转至“管理模块”页面。 单击。
- 指定您要在其上安装应用程序中所包含模块的应用程序服务器,然后单击确定。
可以将
Java 2 Platform, Enterprise Edition (J2EE) 1.4 模块部署到 V6 或更高版本节点上的服务器。可以将 Java Platform, Enterprise Edition
(Java EE) 5 模块部署到 V7.x 或更高版本节点上的服务器。
可以将 Java EE 6 模块部署到 V8.x 或更高版本节点上的服务器。可以将 Java EE 7 模块部署到 V9.x 节点上的服务器。
在多服务器产品中,还可以将模块部署到集群。要部署
J2EE 1.4 模块,集群必须包含 V6 或更高版本节点上的集群成员。要部署 Java EE 5 模块,集群必须包含
V7.x 或更高版本节点上的集群成员。要部署 Java EE 6 模块,集群必须包含
V8.x 或更高版本节点上的集群成员。要部署 Java EE 7 模块,集群必须包含 V9.x 节点上的集群成员。
结果
在替换整个应用程序后,产品会卸载旧应用程序。在替换模块、文件或部分应用程序后,产品会从已安装的应用程序中移除旧的已安装的模块、文件或部分应用程序。
下一步做什么
在成功安装应用程序文件或模块后,请执行以下操作:
- 如果更改后的应用程序或模块部署在集群中,那么将更改推出到集群中所有部署了该应用程序或模块的集群成员。在“企业应用程序”页面上单击推出更新以便将更改后的配置传播到集群中所有部署了该应用程序或模块的集群成员。推出更新将按顺序更新包含集群成员的节点上的配置。
注: 如果集群中的同一节点上具有多个成员,那么该节点上的所有成员将同时停止。
最佳实践: 在应用程序或模块安装期间,当控制台显示正在安装消息结束时,单击管理应用程序以转至“企业应用程序”页面。在推出对配置所作的更改前,不要保存那些更改。
- 将更改保存到配置。
在多服务器产品上,单击保存后,当
Deployment Manager 上的配置与安装应用程序的节点上的配置同步时,产品会删除旧应用程序文件并复制新文件。
如果当您更新应用程序时,它正在运行,那么在将其文件复制到节点的目标目录前,应用程序停止运行,并在复制操作完成后重新启动。这样,节点将其配置与 Deployment Manager 同步期间,应用程序在节点上不可用。
- 如果需要,手动重新启动应用程序以使更改生效。
如果应用程序正在运行时对其进行更新,产品将自动停止该应用程序或仅停止其已更改的组件,更新应用程序逻辑,然后重新启动已停止的应用程序或其组件。
如果在应用程序正在运行时更新模块元数据,那么重新启动应用程序可能不足以使更改生效。例如,如果更改正在运行的
Java EE 6 应用程序(其使用注释)中的描述符,那么必须重新安装该应用程序。如果更改在应用程序中引入、移除或更改类层次结构的类,并且这些更改会影响带注释的类,那么也必须重新安装该应用程序。
- 如果要更新的应用程序部署在某个服务器上,且在“应用程序服务器设置”页面上该服务器的应用程序类装入器策略设置为 Single,那么重新启动该服务器。