[AIX Solaris HP-UX Linux Windows][z/OS]

通过将属性文件添加至受监控目录来安装企业应用程序文件

您可以使用应用程序属性文件来在服务器或集群上安装企业应用程序文件,更新已部署的应用程序或模块,或者卸载已部署的应用程序或模块。将属性文件拖放或复制到受监控目录,产品就会执行属性文件中所述的部署操作。可以使用属性文件安装、更新或卸载的企业应用程序文件包括企业归档 (EAR)、Web 归档 (WAR)、Java™ 归档 (JAR) 和会话启动协议 (SIP) 归档 (SAR) 文件。企业应用程序文件必须符合 Java Platform, Enterprise Edition (Java EE) 规范。

开始之前

开发和组装 EAR、JAR、WAR 或 SAR 文件。您可以使用受支持的组装工具(例如 IBM® Rational® Application Developer for WebSphere® Software 产品)来指定绑定以及组装文件。

与“通过将企业应用程序文件添加至受监控目录来安装企业应用程序文件”中所述的过程(该过程不会更改现有 Java 命名和目录 (JNDI) 以及其他应用程序绑定)不同,您可以在属性文件中设置绑定。

缺省情况下,未启用受监控目录部署。您必须先启用受监控目录部署,然后才能使用它。请参阅设置受监控目录部署值

限制: 通过将属性文件添加至受监控目录来安装 EAR、JAR、WAR 或 SAR 文件的方法,只在分布式或 z/OS® 操作系统上可用。IBM i 操作系统不支持此方法。

关于此任务

您可以通过将应用程序属性文件拖放或复制到 monitoredDeployableApps/deploymentProperties 受监控目录,来将 EAR、JAR、WAR 或 SAR 文件部署到应用程序服务器或集群。缺省情况下,产品会以不超过每 5 秒钟一次的频率,扫描受监控目录以取得新的属性文件。在受监控目录中找到新的属性文件后,产品会自动运行 wsadmin applyConfigProperties 命令,在应用程序服务器或集群上安装应用程序或模块,然后启动应用程序或模块。

您不需要启动 wsadmin,也不需要输入任何命令,就可以部署应用程序或模块。只需将属性文件添加至受监控目录即可。产品会自动运行 wsadmin applyConfigProperties 命令。

您也可以使用属性文件来更新或删除已部署的应用程序或模块。服务器或集群必须正在运行,这样产品才能检测到对其受监控目录中文件的更改。

这些步骤假定您使用图形文件浏览器来拖放或复制属性文件。或者,您可以使用操作系统命令来将文件复制到 monitoredDeployableApps/deploymentProperties 受监控目录。

过程

  1. 创建属性文件,以定义您要完成的部署任务。

    末尾的示例提供了可在受监控目录中使用的样本应用程序属性文件。

    在受监控目录中所用的属性文件,与使用属性文件来安装、更新和删除企业应用程序文件的相关主题中所述的属性文件相同。但是,用于受监控目录的属性文件略有不同:

    • 您不需要在头中指定 CreateDeleteCommandProperties=true 等语句。
    • 要卸载企业应用程序,请在属性部分的头中指定 DELETE=true

    在属性文件中仅指定应用程序资源类型操作 ImplementingResourceType=Application。如果属性文件包含非应用程序资源类型(例如 ImplementingResourceType=Server),那么产品会返回错误消息,并且不会对该资源类型执行操作。

    您可以使用已编辑的属性文件来安装或更新应用程序。要抽取已部署企业应用程序的属性文件来进行编辑或用作模板,请运行 extractConfigProperties 命令:
    • 将应用程序属性抽取到使用旧应用程序输出格式的文件中。
      AdminTask.extractConfigProperties('[-propertiesFileName myApp.props -configData Deployment=MyApplication]')

      运行此 Jython 示例会产生名为 myApp.props 的文件,该文件列示名为 MyApplication 的应用程序配置对象的属性。缺省情况下,extractConfigProperties 命令产生的输出会显示安装任务的所有列(包括隐藏和非隐藏的列),任务数据值列示在独立的行中。mutables 行显示可编辑的列 (true) 及不可编辑的列 (false)。

      ...
      taskName=MapModulesToServers
        mutables={false false true false false false} #readonly
        row0={module uri server ModuleVersion moduletype moduletypeDisplay} # readonly
      ...

      此格式在示例使用旧应用程序输出格式安装具有各种任务选项的企业应用程序中显示。

    • 将应用程序属性抽取到使用简单输出格式的文件中。
      AdminTask.extractConfigProperties('[-propertiesFileName myApp.props -configData Deployment=MyApplication
         -options [[SimpleOutputFormat true]]]')

      如果在 SimpleOutputFormat 选项设置为 true 的情况下运行此 Jython 示例,那么会产生名为 myApp.props 的文件,该文件以易于阅读的格式列示名为 MyApplication 的应用程序配置对象的属性。输出以 columnName=value 对的形式显示应用程序属性的非隐藏列。输出中不包括应用程序属性的隐藏列。

      ...
      taskName=MapModulesToServers
      row0={ module="My EJB Module"  #readonly
             uri=MyEjbModule.jar,META-INF/ejb-jar.xml  #readonly
             server=WebSphere:cell=!{cellName},node=!{nodeName},
             server=!{serverName} }
      ...

      此格式在示例使用简单输出格式安装具有各种任务选项的企业应用程序中显示。

    有关抽取应用程序属性和输出格式的更多信息,请参阅使用应用程序属性文件来安装、更新和删除企业应用程序文件的相关主题。

  2. 请确保要安装企业应用程序文件的应用程序服务器或集群成员正在运行。
  3. 请确保已启用受监控目录部署。

    请参阅“设置受监控目录部署值”。

  4. 打开文件浏览器并创建 deploymentProperties 受监控目录。

    对于基本(独立)应用程序服务器,受监控目录位于应用程序服务器概要文件下面。创建 deploymentProperties 目录后,目录路径是 app_server_root/profiles/application_server_profile_name/monitoredDeployableApps/deploymentProperties

    对于 Deployment Manager 的受管理(联合)节点上的应用程序服务器,请在 Deployment Manager 概要文件下面创建 deploymentProperties 受监控目录。创建 deploymentProperties 目录后,目录路径是 app_server_root/profiles/deployment_manager_profile_name/monitoredDeployableApps/deploymentProperties

    对于集群,请在 Deployment Manager 概要文件下面创建 deploymentProperties 受监控目录。创建 deploymentProperties 目录后,目录路径是 app_server_root/profiles/deployment_manager_profile_name/monitoredDeployableApps/deploymentProperties

  5. 将属性文件复制到 deploymentProperties 受监控目录中。

结果

产品会将与文件同名的目录添加至概要文件的 installedApps/cell_name 目录。

此外,产品会将应用程序部署的相关消息,写入 app_server_root/logs/server_name 目录的 SystemOut.log 文件中。这些消息以 CWLDD 消息关键字开头。

消息指出产品已部署应用程序文件,并且该应用程序正在运行。

注: 本主题引用了一个或多个应用程序服务器日志文件。作为另一种建议采用的方法,您可以在分布式系统和 IBM i 系统上配置服务器以使用高性能可扩展日志记录 (HPEL) 记录和跟踪基础结构,而不使用 SystemOut.logSystemErr.logtrace.logactivity.log 文件。您还可以将 HPEL 与本机 z/OS 日志记录设施结合使用。如果要使用 HPEL,那么可从服务器概要文件 bin 目录使用 LogViewer 命令行工具来访问所有日志和跟踪信息。有关使用 HPEL 的更多信息,请参阅有关使用 HPEL 对应用程序进行故障诊断的信息。

对于 Deployment Manager 受监控目录上的安装,如果 Node Agent 或服务器未在运行,那么产品不会自动启动应用程序或模块。如果 Node Agent 已停止,那么产品会在 Deployment Manager 级别安装应用程序或模块,但不会使更改与节点同步,并且不会启动应用程序或模块。更改将在下一次运行代理程序时在节点处进行,并且会进行节点同步。如果服务器已停止但 Node Agent 正在运行,那么产品会安装应用程序或模块并使更改与节点同步,但不会启动服务器。

示例

以下示例属性文件提供了一些模板,可让您进行修改以部署应用程序:

在部署目标上安装企业应用程序

表 1. 必需属性. 在属性文件中指定下表中的属性。
属性 描述
Name 指定要安装的应用程序的名称。
TargetServer 指定要安装应用程序的服务器的名称。
TargetNode 指定要安装应用程序的节点的名称。
EarFileLocation 指定企业归档(EAR 文件)的位置。请提供标准路径名称。
#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=helloTargetServer=!{serverName}
TargetNode=!{nodeName}
EarFileLocation=/temp/HelloWorld.ear
#TargetCluster=cluster1

EnvironmentVariablesSection
#
#
#Environment Variables
cellName=myCell
nodeName=myNode
serverName=myServer

使用旧应用程序输出格式来安装具有各种任务选项的企业应用程序

该示例属性会安装具有任务选项的企业应用程序。该属性文件会显示安装任务的所有列(包括隐藏和非隐藏的列),任务数据值列示在独立的行中。mutables 行显示可编辑的列 (true) 及不可编辑的列 (false)。

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=!{applicationName}
EarFileLocation=c:/temp/HelloWorld.ear

#
# SubSection 1.0.2 # MapModulesToServers Section. taskName
# and row0 should not be edited. row0 contains column names
# for the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=MapModulesToServers
  mutables={false false true false false false} #readonly
  row0={module uri server ModuleVersion moduletype moduletypeDisplay} # readonly
  row1={“My Web Module” myWebModule.war,WEB-INF/web.xml 
  WebSphere:cell=!{cellName},node=!{nodeName},server=!{serverName} 14
  moduletype.web "Web Module"}
  row2={"My EJB module" MyEjbModule.jar,META-INF/ejb-jar.xml
  WebSphere:cell=!{cellName},node=!{nodeName},server=
  !{serverName} 13 moduletype.ejb "EJB Module"}


#
# SubSection 1.0.3 # MapRolesToUsers Section. taskName and 
# row0 should not be edited. row0 contains column names for
# the tasks.
#ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=MapRolesToUsers
row0={role role.everyone role.all.auth.user role.user 
role.group role.all.auth.realms role.user.access.ids 
role.group.access.ids} #readonly
mutables={false true true true true true true true} 
#readonly
row1={administrator AppDeploymentOption.No 
AppDeploymentOption.No "adminuser" "admingroup" 
AppDeploymentOption.No "" ""}


#
# SubSection 1.0.4 # BindJndiForEJBNonMessageBinding 
# Section. taskName and row0 should not be edited. row0 
# contains column names for the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
#Properties
#
taskName=BindJndiForEJBNonMessageBinding
row0={EJBModule EJB uri JNDI ModuleVersion 
localHomeJndi remoteHomeJndi} #readonly
mutables={false false false true false true true} #readonly
row1={"My EJB module" myEjb myEjbModule.jar,META-INF/ejb-
jar.xml myEjb 20 "" “"}


#
# SubSection 1.0.5 # MapEJBRefToEJB Section. taskName and 
# row0 should not be edited. row0 contains column names for
# the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#


#
#Properties
#
taskName=MapEJBRefToEJB
row0={module EJB uri referenceBinding class JNDI 
ModuleVersion} #readonly
mutables={false false false false false true false} 
#readonly
row1={"My EJB module" myEJB MyEjbModule.jar,META-INF/ejb-
jar.xml myEJB com.ibm.defaultapplication.Increment 
Increment 23}

#
# SubSection 1.0.6 # DataSourceFor20EJBModules Section. 
# taskName and row0 should not be edited. row0 contains 
# column names for the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
#
#Properties
#
taskName=DataSourceFor20EJBModules
row0={AppVersion EJBModule uri JNDI resAuth 
login.config.name auth.props dataSourceProps} #readonly
mutables={false false false true true true true true} 
#readonly
row1={13 "My EJB module" MyEjbModule.jar,META-INF/ejb-
jar.xml MyDataSource cmpBinding.perConnectionFactory "" ""
 ""}

#
# SubSection 1.0.7 # DataSourceFor20CMPBeans Section. 
# taskName and row0 should not be edited. row0 contains 
# column names for the task.#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=DataSourceFor20CMPBeans
row0={AppVersion EJBVersion EJBModule EJB uri JNDI resAuth
login.config.name auth.props} #readonly
mutables={false false false false false true true true 
true} #readonly
row1={13 13 "My EJB module" MyEjb MyEjbModule.jar,META-
INF/ejb-jar.xml myDataSource
cmpBinding.perConnectionFactory "" ""}

#
# SubSection 1.0.8 # MapWebModToVH Section. taskName and 
# row0 should not be edited. row0 contains column names for
# the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}

#
# Properties
#
taskName=MapWebModToVH
row0={webModule uri virtualHost} #readonly
mutables={false false true} #readonly
row1={"My Web Application" MyWebModule.war,WEB-INF/web.xml
default_host}
#


#
# SubSection 1.0.9 # CtxRootForWebMod Section. taskName and 
# row0 should not be edited. row0 contains column names for
# the task.#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=CtxRootForWebMod
row0={webModule uri web.contextroot} #readonly
mutables={false false true} #readonly
row1={"My Web Application" MyWebModule.war,WEB-INF/web.xml
/}


#
# SubSection 1.0.10 # MapSharedLibForMod Section. 
taskName
# and row0 should not be edited. row0 contains column names
# for the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=MapSharedLibForMod
row0={module uri sharedLibName} #readonly
mutables={false false true} #readonly
row2={"My Web Application" MyWebModule.war,WEB-INF/web.xml
 ""}
row1={myApp META-INF/application.xml ""}#


#
# SubSection 1.0.11 # JSPReloadForWebMod Section. taskName
# and row0 should not be edited. row0 contains column names
# for the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=JSPReloadForWebMod
row0={webModule uri jspReloadEnabled jspReloadInterval} 
#readonly
mutables={false false true true} #readonly
row1={"My Web Application" MyWebModule.war,WEB-INF/ibm-web-
ext.xmi AppDeploymentOption.Yes}
#


#
# SubSection 1.0.35 # SharedLibRelationship Section.
# taskName and row0 should not be edited. row0 contains 
# column names for the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=SharedLibRelationship
row0={module uri relationship compUnitName matchTarget 
origRelationship} #readonly
mutables={false false true true true false} #readonly
row2={"My Web Application" MyWebModule.war,WEB-INF/web.xml
"" "" AppDeploymentOption.Yes ""}
row1={myApp META-INF/application.xml "" "" 
AppDeploymentOption.Yes ""}
#

EnvironmentVariablesSection
#
# Environment Variables
#
applicationName=myApp cellName=myCell
nodeName=myNode
serverName=myServer

使用简单输出格式来安装具有各种任务选项的企业应用程序

该示例属性会安装具有任务选项的企业应用程序。该示例显示已利用 SimpleOutputFormat 选项抽取的应用程序属性。利用此选项,属性文件会以 columnName=value 对的形式显示应用程序属性的非隐藏列。输出中不包括应用程序属性的隐藏列。您将发现,利用 SimpleOutputFormat 选项抽取应用程序属性文件会产生易于阅读和编辑的格式。

#
   # Header
   #
   ResourceType=Application
   ImplementingResourceType=Application

# Properties
Name=!{applicationName}
EarFileLocation=c:/temp/HelloWorld.ear

#
# SubSection 1.0.2 # MapModulesToServers Section. taskName
# and lines marked as "#readonly" should not be edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#         

#
# Properties
#
taskName=MapModulesToServers
row0={ module="My EJB Module"  #readonly
       uri=MyEjbModule.jar,META-INF/ejb-jar.xml  #readonly
       server=WebSphere:cell=!{cellName},node=!{nodeName},
       server=!{serverName} }
row1={ module="My Web Module"  #readonly
       uri=myWebModule.war,WEB-INF/web.xml  #readonly
       server=WebSphere:cell=!{cellName},node=!{nodeName},
       server=!{serverName} }


#
# SubSection 1.0.3 # MapRolesToUsers Section. taskName and 
# lines marked as "#readonly" should not be edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=MapRolesToUsers
row0={ role="All Role"  #readonly
       role.everyone=AppDeploymentOption.No
       role.all.auth.user=AppDeploymentOption.Yes
       role.user=""
       role.group=""
       role.all.auth.realms=AppDeploymentOption.No
       role.user.access.ids=""
       role.group.access.ids="" }


#
# SubSection 1.0.4 # BindJndiForEJBNonMessageBinding 
# Section. taskName and lines marked as "#readonly" should
# not be edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#


#
#Properties
#
taskName=BindJndiForEJBNonMessageBinding
row0={ EJBModule="My EJB Module"  #readonly
      EJB=myEjb  #readonly
      uri=myEjbModule.jar,META-INF/ejb-jar.xml  #readonly
      JNDI=myEjb
      localHomeJndi=""
      remoteHomeJndi="" }


#
# SubSection 1.0.5 # MapEJBRefToEJB Section. taskName and 
# lines marked as "#readonly" should not be edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#


#
#Properties
#
taskName=MapEJBRefToEJB
row0={ module="My EJB Module"  #readonly
      EJB=myEJB  #readonly
      uri=MyejbModule.jar,META-INF/ejb-jar.xml  #readonly
      referenceBinding=myEJB  #readonly
      class=com.ibm.defaultapplication.Increment #readonly
      JNDI=myejb }


#
# SubSection 1.0.6 # DataSourceFor20EJBModules Section. 
# taskName and lines marked as "#readonly" should not be
# edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
#
#Properties
#
taskName=DataSourceFor20EJBModules
row0={ EJBModule="My EJB Module"  
       #readonly
       uri=myEjbModule.jar,META-INF/ejb-jar.xml  #readonly
       JNDI=MyDatasource
       resAuth=cmpBinding.perConnectionFactory
       login.config.name=""
       auth.props=""
       dataSourceProps="" }


#
# SubSection 1.0.7 # DataSourceFor20CMPBeans Section. 
# taskName and lines marked as "#readonly" should not be
# edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#


#
# Properties
#
taskName=DataSourceFor20CMPBeans
row0={ EJBModule="My EJB Module”  #readonly
       EJB=MyEjb  #readonly
       uri=MyEjbModule.jar,META-INF/ejb-jar.xml  #readonly
       JNDI=MyDatasource
       resAuth=cmpBinding.perConnectionFactory
       login.config.name=""
       auth.props="" }


#
# SubSection 1.0.8 # MapWebModToVH Section. taskName and 
# lines marked as "#readonly" should not be edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}


#
# Properties
#
taskName=MapWebModToVH
row0={ webModule="My Web Application"  #readonly
       uri=myWebModule.war,WEB-INF/web.xml  
       #readonly
       virtualHost=default_host }


#
# SubSection 1.0.9 # CtxRootForWebMod Section. taskName and 
# lines marked as "#readonly" should not be edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#


# Properties
#
taskName=CtxRootForWebMod
row0={ webModule="My Web Application"  #readonly
       uri=myWebModule.war,WEB-INF/web.xml  
       #readonly
       web.contextroot=/ }


#
# SubSection 1.0.10 # MapSharedLibForMod Section. 
# taskName and lines marked as "#readonly" should not be
# edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=MapSharedLibForMod
row0={ module=myApp”  #readonly
       uri=META-INF/application.xml  #readonly
       sharedLibName="" }
row1={ module="My Web Application"  #readonly
       uri=MyWebModule.war,WEB-INF/web.xml  #readonly
       sharedLibName="" }


#
# SubSection 1.0.11 # JSPReloadForWebMod Section. taskName
# and lines marked as "#readonly" should not be 
# edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#


#
# Properties
#
taskName=JSPReloadForWebMod
row0={ webModule="My Web Application"  #readonly
      uri=MyWebModule.war,WEB-INF/web.xml  
           #readonly
       jspReloadEnabled=AppDeploymentOption.Yes
       jspReloadInterval=10 }


#
# SubSection 1.0.35 # SharedLibRelationship Section.
# taskName and lines marked as "#readonly" should not be
# edited.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=SharedLibRelationship
row0={ module=myApp  #readonly
       uri=META-INF/application.xml  #readonly
       relationship=""
       matchTarget=AppDeploymentOption.Yes }
row1={ module="My Web Application"  #readonly
       uri=MyWebModule.war,WEB-INF/web.xml  
       #readonly
       relationship=""
       matchTarget=AppDeploymentOption.Yes }

EnvironmentVariablesSection
#
# Environment Variables
#
applicationName=myApp cellName=myCell
nodeName=myNode
serverName=myServer

更新已部署的企业应用程序中的单个文件

该示例属性会将单个文件添加至已部署的应用程序:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=helloUpdate=true
operationType=add
contentType=file
contentURI=test.war/com/ibm/addMe.jspcontentFile=/temp/addMe.jsp

从已部署的企业应用程序中移除单个文件

示例属性会从已部署应用程序中删除单个文件:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=helloUpdate=true
operationType=delete
contentType=file
contentURI=test.war/com/ibm/addMe.jsp

更新已部署的企业应用程序中的单个模块

该示例属性会将单个模块添加至已部署的应用程序:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=helloUpdate=true
operationType=add
contentType=moduleFile
#contextRoot=”/mywebapp” # required for web module only
contentURI=Increment.jar
contentFile=/apps/app1/Increment.jar
deployEJB=false

从已部署的企业应用程序中移除单个模块

该示例属性会从已部署应用程序中删除单个模块:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=helloUpdate=true
operationType=delete
contentType=moduleFile
contentURI=test.war

替换、添加或删除已部署的企业应用程序中的多个文件

此选项指定通过上载压缩的文件来更新已安装应用程序的多个文件。根据压缩文件内容的不同,使用一次此选项就可以对已安装的应用程序替换文件、添加新文件和删除文件。压缩文件中的每个条目都被看作单个文件,而相对于压缩文件根的文件路径被视为该文件在已安装的应用程序中的相对路径。

要替换文件,在已压缩文件中的文件必须有与在已安装的应用程序中要更新的文件相同的相对路径。

要将新文件添加至已安装的应用程序,在已压缩文件中的文件必须有与已安装的应用程序中的文件不同的相对路径。

已安装的应用程序中文件的相对路径由两个部分并置组成并用正斜杠 / 分隔:第一部分是模块(如果文件在模块内)的相对路径,第二部分是模块根中文件的相对路径。

要从已安装的应用程序移除文件,使用在任何归档作用域中名为 META-INF/ibm-partialapp-delete.props 的文件在已压缩文件中指定元数据。ibm-partialapp-delete.props 文件必须是 ASCII 码文件,它列示要在该归档中删除的文件,每行一个条目。条目可以包含字符串模式,如识别多个文件的正则表达式。要删除的文件的文件路径必须相对于具有 META-INF/ibm-partialapp-delete.props 文件的归档路径。

有关要包括在压缩文件中的元数据 .props 文件的更多信息,请参阅“准备应用程序更新设置”中的“替换、添加或删除多个文件”部分。

该示例属性使用 myAppPartial.zip 压缩文件来更新名为 hello 的已部署应用程序:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=helloUpdate=true
operationType=update
contentType=partialapp
contentFile=/temp/MyApp/myAppPartial.zip

替换已部署的整个企业应用程序

该示例属性更新整个已部署的应用程序:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application


# Properties
Name=helloUpdate=true
operationType=update
contentType=app
contentFile=/apps/app1/newApp1.ear
useDefaultBindings=true

从部署目标中卸载应用程序

该示例属性会卸载已部署应用程序:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application
DELETE=true

# Properties
Name=hello

编辑已部署的应用程序的部署选项

示例属性会更新已部署应用程序的部署选项:

#
# Header
#
ResourceType=Application
ImplementingResourceType=Application

# Properties
Name=!{applicationName}

#
# SubSection 1.0.1 # AppDeploymentOptions Section. taskName
# and row0 should not be edited. row0 contains column names
# for the task.
#
ResourceType=Application
ImplementingResourceType=Application
ResourceId=Deployment=!{applicationName}
#

#
# Properties
#
taskName=AppDeploymentOptions
row1={$(APP_INSTALL_ROOT)/$(CELL)
AppDeploymentOption.Yes 
AppDeploymentOption.No 
AppDeploymentOption.No 
AppDeploymentOption.No 
"" 
off .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 
"WASX.SERV1 [x0617.27]" 
AppDeploymentOption.No 
AppDeploymentOption.No}
mutables={true true true true true true true true false true true}
row0={installed.ear.destination
distributeApp
useMetaDataFromBinary
createMBeansForResources
reloadEnabled
reloadInterval 
validateinstall 
filepermission 
buildVersion 
allowDispatchRemoteInclude 
allowServiceRemoteInclude} #readonly

#
EnvironmentVariablesSection
#
#
#Environment Variables
applicationName=newhello

编辑 Web 模块部署属性

该示例属性会编辑 Web 模块的部署属性:

#
# WebModuleDeployment
#
ResourceType=WebModuleDeployment
ImplementingResourceType=Application
ResourceId=Cell=!{cellName}:Deployment=!{applicationName}:ApplicationDeployment=
:WebModuleDeployment=uri#web.war


#
#Properties
#
startingWeight=90000 #integer,required,default(1)
deploymentId=1 #required
classloaderMode=PARENT_FIRST ENUM(PARENT_FIRST|PARENT_LAST),default(PARENT_FIRST)
altDD=null
uri=web.war #required
#applicationDeployment=Cell=!{cellName}:Deployment=!{applicationName}:ApplicationDeployment=
#ObjectName(ApplicationDeployment)


EnvironmentVariablesSection
#
#
#Environment Variables
cellName=myCell
applicationName=myApp 

下一步做什么

如果属性文件部署应用程序或模块,请测试所部署的应用程序或模块。例如,在 Web 浏览器中输入所部署应用程序的 URL 并检查该应用程序的执行情况。

如果部署失败,请参阅 SystemOut.log 文件中的消息,修正错误条件,然后将属性文件重新添加至受监控目录。


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



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