配置应用程序使用类装入器的方式

您可以配置应用程序和 Web 模块用来装入类的类装入器:是使用他们自己的类装入器来装入类还是使用不同的类装入器;并且可以配置更新应用程序文件时的类重新装入行为。类装入器允许应用程序访问可用类和资源的存储库。

开始之前

本主题假定应用程序或模块已部署在服务器上。

以下注意事项适用于本主题中的 xmi 文件引用:
支持的配置 支持的配置: 对于 IBM® 扩展文件和绑定文件,根据您使用的是 Java EE 5 之前的应用程序或模块还是 Java™ EE 5 或之后的应用程序或模块,.xmi 或 .xml 文件扩展名有所不同。IBM 扩展文件或绑定文件将命名为 ibm-*-ext.xmi 或 ibm-*-bnd.xmi,其中 * 是扩展文件或绑定文件的类型,例如,app、application、ejb-jar 或 web。存在下列条件:
  • 对于使用 V5 之前的 Java EE 版本的应用程序或模块,文件扩展名必须是 .xmi。
  • 对于使用 Java EE 5 或更高版本的应用程序或模块,文件扩展名必须是 .xml。如果应用程序或模块中包含 .xmi 文件,那么产品将忽略这些 .xmi 文件。

然而,Java EE 5 或更高版本的模块可以在包含 Java EE 5 之前的文件并使用 .xmi 文件扩展名的应用程序中存在。

ibm-webservices-ext.xmiibm-webservices-bnd.xmiibm-webservicesclient-bnd.xmiibm-webservicesclient-ext.xmiibm-portlet-ext.xmi 文件继续使用 .xmi 文件扩展名。

sptcfg

关于此任务

类装入器影响应用程序及其模块能否找到他们有效运行所需的资源。可以选择让应用程序和 Web 模块使用他们自己的类装入器来装入类,也可以让他们使用父类装入器。

应用程序类装入器对 Enterprise JavaBeans (EJB) 模块、共享库、资源适配器归档(RAR 文件)以及与应用程序相关联的依赖项 Java 归档 (JAR) 文件进行分组。依赖项 JAR 文件是包含企业 Bean 和 Servlet 都可使用的代码的 JAR 文件。

应用程序类装入器是 Web 应用程序归档 (WAR) 类装入器的父代。缺省情况下,Web 模块具有其自己的 WAR 类装入器,以装入 Web 模块的内容。应用程序类装入器的 WAR 类装入器策略值确定是使用 WAR 类装入器还是应用程序类装入器来装入 Web 模块的内容。

还可以选择当应用程序文件被更新时是否重新装入类。对于 EJB 模块或任何非 Web 模块,如果启用类重新装入功能,那么会导致应用程序服务器运行时停止应用程序并接着将其启动以重新装入应用程序类。对于 Web 模块(例如 Servlet 和 JavaServer Pages (JSP) 文件),仅当 ibm-web-ext.xmi 文件中的 IBM 扩展 reloadingEnabled 设置为 true 时,Web 容器才会重新装入 Web 模块。

要配置应用程序和 Web 模块使用的类装入器,请使用管理控制台的类装入和更新检测页。

注意: 如果应用程序正在运行,那么更改应用程序设置将导致应用程序重新启动。在独立服务器上,应用程序在您保存更改后将重新启动。在多服务器产品上,应用程序将在您保存更改后重新启动,并且在安装应用程序的节点上,文件将同步。要控制对多服务器产品进行同步的时间,请取消选择控制台首选项页面上的将更改与节点同步

过程

  1. 请单击应用程序 > 应用程序类型 > WebSphere 企业应用程序 > application_name > 类装入和更新检测以访问“类装入和更新检测”页面。
  2. 指定在应用程序或它的文件被更新时是否重新装入应用程序类。

    缺省情况下,未启用类重新装入。选择覆盖 Web 模块和 EJB 模块的类重新装入设置以选择重新装入应用程序类。您可为 EJB 模块和 Web 模块(如 Servlet 和 JSP 文件)指定不同的值。

  3. 指定扫描应用程序的文件系统以查找已更新文件的间隔秒数。

    仅当启用了类重新装入时,对更新文件的轮询时间间隔指定的值才会生效。缺省值为企业应用程序(EAR 文件)的 IBM 扩展 (META-INF/ibm-application-ext.xmi) 中的重新装入时间间隔属性的值。您可为 EJB 模块和 Web 模块(如 Servlet 和 JSP 文件)指定不同的值。

    要启用重新装入,指定大于零的整数值(例如 1 到 2147483647)。

    要禁用重新装入功能,请指定零 (0)。

  4. 指定应用程序的类装入器顺序。

    应用程序类装入器顺序指定:类装入器在装入类时是首先在父类装入器中进行搜索,还是首先在应用程序类装入器中进行搜索。缺省是在应用程序类装入器装入一个类中搜索之前,在父类装入器中搜索。

    类装入器顺序选择下列其中一个值:

    选项 描述
    父类装入器装入的类最先 导致类装入器首先在父类装入器中搜索,以装入类。此值是 Development Kit 类装入器和 WebSphere® Application Server 类装入器的标准。
    本地类装入器装入的类最先(父代最后) 导致类装入器首先在应用程序类装入器中搜索,以装入类。通过指定本地类装入器装入的类最先(父代最后),应用程序可以覆盖包含在父类装入器中的类。
    注意: 如果指定首先使用本地类装入器来装入类(最后使用父类装入器)值,那么在混合使用已覆盖的类和未覆盖的类时,可能会出现 LinkageErrors 或 ClassCastException 消息。
  5. 指定使用单个还是多个类装入器来装入应用程序的 Web 应用程序归档(WAR 文件)。

    缺省情况下,Web 模块具有其自己的 WAR 类装入器,以装入 WEB-INF/classesWEB-INF/lib 目录的内容。缺省的 WAR 类装入器值为应用程序中每个 WAR 文件的类装入器,即,使用单独的类装入器来装入每个 WAR 文件。如果将值设置为应用程序的单个类装入器,那么会导致应用程序类装入器装入 Web 模块内容以及应用程序的相关 EJB 模块、共享库、RAR 文件和所依赖的 JAR 文件。应用程序类装入器是 WAR 类装入器的父代。

    WAR 类装入器策略选择下列两个值中的一个:

    选项 描述
    应用程序中每个 WAR 文件的类装入器 为每个 WAR 文件使用不同的类装入器。
    应用程序的单个类装入器 使用单个类装入器,以在应用程序中装入所有 WAR 文件。
  6. 单击确定

结果

应用程序或模块配置已更改。应用程序或独立 Web 模块将重新启动以使更改生效。

下一步做什么

如果应用程序或模块部署在集群中,并且不再需要进行配置更改,请在企业应用程序页面上单击推出更新以便将更改后的配置传播到集群中所有部署了该应用程序或模块的集群成员。推出更新将按顺序更新包含集群成员的节点上的配置。

保存对管理配置所作的更改。

在多服务器产品中,将 Deployment Manager 上的配置更改与各个将要运行应用程序的节点的配置进行同步时,将把应用程序二进制文件传送到那些节点。


指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=trun_app_classload
文件名:trun_app_classload.html