使用 wsadmin 脚本编制的 AdminApp 对象的命令

使用 AdminApp 对象来安装、修改和管理应用程序。

AdminApp 对象与 WebSphere® Application Server 管理和配置服务交互,以对应用程序执行查询和更改。此交互包含安装和卸载应用程序、列示模块和导出等。

如果您只要使用本地操作,那么当无服务器运行时您可启动脚本客户机。要以本地方式运行,使用 -conntype NONE 选项启动脚本客户机。您会接收到正在以本地方式运行的消息。建议服务器运行的时候不要以本地方式运行 AdminApp 对象。这是因为以本地方式进行的任何配置更改将不会反映到正在运行的服务器配置中,反之亦然。如果您保存冲突的配置,那么会毁坏配置。

[AIX Solaris HP-UX Linux Windows]要点: 如果正在使用 wsadmin -conntype NONE 来以本地方式部署应用程序,那么必须修改 install_root/bin 目录中的 wsadmin.batwsadmin.sh 命令文件。请完成下列步骤:
  1. 生成 install_root/bin/wsadmin.batinstall_dir/bin/wsadmin.bat 文件的备份副本。
  2. 在对 setupCmdLine.batsetupCmdLine.sh 文件进行调用之后,立即将下列代码行添加至 wsadmin 文件:
    [AIX]
    LIBPATH="$WAS_LIBPATH":$LIBPATH
    export LIBPATH EXTSHM
    [HP-UX]
    SHLIB_PATH="$WAS_LIBPATH":$SHLIB_PATH
    export SHLIB_PATH
    [Linux][Solaris]
    LD_LIBRARY_PATH="$WAS_LIBPATH":$LD_LIBRARY_PATH
    export LD_LIBRARY_PATH
    [Windows]
    SET PATH=%WAS_PATH%
    避免故障 避免故障: 不要在以前导出的语句上指定 LD_LIBRARY_PATH_64 替换 LD_LIBRARY_PATH。指定该导出语句上的 LD_LIBRARY_PATH_64 覆盖存在于其他脚本中的任何 LD_LIBRARY_PATH 值。gotcha
  3. 保存更新的 wsadmin.batwsadmin.sh 文件。
  4. 部署应用程序。

在 Deployment Manager 环境中,仅当脚本编制客户机连接到 Deployment Manager 时才可更新配置。

当连接到 Node Agent 或受管的应用程序服务器时,您将无法更新配置,因为这些服务器进程的配置是驻留在 Deployment Manager 的主配置的副本。当在 Deployment Manager 和 Node Agent 之间进行同步配置时,将在节点机器上创建这些副本。通过将脚本编制客户机连接到 Deployment Manager,对服务器进程进行配置更改。出于该原因,要更改配置,不要在节点机器上以本地方式运行脚本编制客户机。它不是支持的配置。

以下注意事项适用于本主题中的 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

deleteUserAndGroupEntries

使用 deleteUserAndGroupEntries 命令来删除所有角色的用户或组,以及删除在应用程序中定义的所有 RunAs 角色的用户标识和密码。

目标对象

无。

必需参数

application name
指定相关的应用程序。

可选参数

无。

示例

  • 使用 Jacl:
    $AdminApp deleteUserAndGroupEntries myapp
  • 使用 Jython 字符串:
    print AdminApp.deleteUserAndGroupEntries('myapp')
  • 使用 Jython 列表:
    print AdminApp.deleteUserAndGroupEntries(['myapp'])

编辑

使用 edit 命令以批处理方式编辑应用程序或模块。edit 命令将使用 options 参数指定的选项来更改由 application name 参数指定的应用程序。edit 命令不需要选项。

目标对象

无。

必需参数

application name
指定相关的应用程序。
options
指定要应用于应用程序或模块配置的选项。

可选参数

无。

示例

  • 使用 Jacl:
    $AdminApp edit "JavaMail Sample" {-MapWebModToVH {{"JavaMail Sample WebApp" mtcomps.war,WEB-INF/web.xml newVH}}}
  • 使用 Jython 字符串:
    print AdminApp.edit("JavaMail Sample", '[-MapWebModToVH [["JavaMail 32 Sample WebApp" 
    mtcomps.war,WEB-INF/web.xml newVH]]]')
  • 使用 Jython 列表:
    option = [["JavaMail 32 Sample WebApp", "mtcomps.war,WEB-INF/web.xml", "newVH"]] 
    mapVHOption = ["-MapWebModToVH", option]
    print AdminApp.edit("JavaMail Sample", mapVHOption)

editInteractive

使用 editInteractive 命令以交互方式编辑应用程序或模块。editInteractive 命令将更改应用程序部署。在 options 参数中指定这些更改。editInteractive 命令不需要选项。

目标对象

无。

必需参数

application name
指定相关的应用程序。
options
指定要应用于应用程序或模块配置的选项。

可选参数

无。

示例

  • 使用 Jacl:
    $AdminApp editInteractive ivtApp 
  • 使用 Jython 字符串:
    AdminApp.editInteractive('ivtApp')

导出

使用 export 命令将 application name 参数导出到您通过 file name 指定的文件中。

目标对象

无。

必需参数

application name
指定相关的应用程序。
file name
指定要将应用程序名称导出至的文件名。

可选参数

exportToLocal
指定系统应该将相关应用程序导出至具有本地客户机上指定的文件名的文件。

示例

  • 使用 Jacl:
    $AdminApp export DefaultApplication c:/temp/export.ear {-exportToLocal}
  • 使用 Jython:
    AdminApp.export('DefaultApplication', 'c:/temp/export.ear', '[-exportToLocal]')

exportDDL

使用 exportDDL 命令将数据定义语言 (DDL) 从 application name 参数抽取到目录指定的 directory name 参数。options 参数是可选的。

目标对象

无。

必需参数

application name
指定相关的应用程序。
directory name
指定要将应用程序名称导出至的目录的名称。

可选参数

options
指定要传递给指定的应用程序名称的选项。

示例

  • 使用 Jacl:
    $AdminApp exportDDL "My App" /usr/me/DDL {-ddlprefix myApp}
  • 使用 Jython 字符串:
    print AdminApp.exportDDL("My App", '/usr/me/DDL', '[-ddlprefix myApp]')

exportFile

使用 exportFile 命令从相关的应用程序中导出用统一资源标识 (URI) 指定的单个文件的内容。

目标对象

无。

必需参数

application name
指定相关的应用程序。
URI
指定要导出的单个文件。在应用程序的上下文中指定该 URI,如以下示例所示:META-INF/application.xml。要指定模块中的文件,该 URI 应以模块 URI 开头,如以下示例中所示:foo.war/WEB-INF/web.xml
filename
指定文件导出目标的标准路径和文件名。

可选参数

无。

示例

  • 使用 Jacl:
    $AdminApp exportFile "My App" myapp/components.jar/META-INF/ibm-ejb-jar-bnd.xml
     META-INF/ibm-ejb-jar-bnd.xml 
  • 使用 Jython 字符串:
    AdminApp.exportFile('My App', 'myapp/components.jar/META-INF/ibm-ejb-jar-bnd.xml', 
    'META-INF/ibm-ejb-jar-bnd.xml')

getDeployStatus

使用 getDeployStatus 命令显示应用程序的部署状态。安装或更新大型应用程序后,请使用此命令来显示应用程序二进制文件扩展的详细状态信息。在系统抽取应用程序二进制文件后,您才能启动该应用程序。

目标对象

无。

必需参数

application name
指定相关应用程序的名称。

可选参数

无。

示例

  • 使用 Jacl:
    $AdminApp getDeployStatus myApplication
  • 使用 Jython:
    print AdminApp.getDeployStatus('myApplication')

运行 getDeployStatus 命令,其中 myApplication 是有关类似以下内容的 DefaultApplication 的状态信息中的 DefaultApplication 结果:

ADMA5071I: Distribution status check started for application DefaultApplication.
WebSphere:cell=myCell01,node=myNode01,distribution=unknown,expansion=unknown
ADMA5011I: The cleanup of the temp directory for application DefaultApplication is complete.
ADMA5072I: Distribution status check completed for application DefaultApplication.
WebSphere:cell=myCell01,node=myNode01,distribution=unknown,expansion=unknown

help

使用 help 命令来显示有关 AdminApp 对象的一般帮助信息。

目标对象

无。

必需参数

无。

可选参数

operation name
指定此选项以显示有关 AdminApp 命令或安装选项的帮助。

样本输出

如果您未指定参数,那么将返回以下输出:
WASX7095I: The AdminApp object allows application objects to be manipulated including installing, 
uninstalling, editing, and listing.  Most of the commands supported by AdminApp operate in two modes: 
the default mode is one in which AdminApp communicates with the application server to accomplish its 
tasks.  A local mode is also possible, in which no server communication takes place.  The local mode of 
operation is invoked by including the "-conntype NONE" flag in the option string supplied to the command.

The following commands are supported by AdminApp; more detailed information about each of these commands 
is available by using the "help" command of AdminApp and supplying the name of the command as an argument.

edit            			Edit the properties of an application
editInteractive 			Edit the properties of an application interactively
export          			Export application to a file
exportDDL      				Extract DDL from application to a directory
help         	   			Show help information
install         			Installs an application, given a file name and an option string.
installInteractive		Installs an application in interactive mode, given a file name and an option string.
list            			List all installed applications
listModules     			List the modules in a specified 
application options 	Shows the options available, either for a given file, or in general.
taskInfo        			Shows detailed information pertaining to a given installation task for a given file
uninstall       			Uninstalls an application, given an application name and an option string
如果您将 operation name 参数的值指定为 uninstall,那么将返回以下输出:
WASX7102I: Method: uninstall
Arguments: application name, options
Description: Uninstalls application named by "application name" using the options supplied by String 2.
Method: uninstall
Arguments: application name
Description: Uninstalls the application specified by "application name" using default options.

示例

使用 Jacl:
  • 以下示例未指定任何参数:
    $AdminApp help
  • 以下示例指定了 operation name 参数:
    $AdminApp help uninstall
使用 Jython:
  • 以下示例未指定任何参数:
    print AdminApp.help()
  • 以下示例指定了 operation name 参数:
    print AdminApp.help('uninstall')

安装

使用 install 命令并提供标准文件名和安装选项字符串来以非交互方式安装应用程序。options 参数是可选的。

目标对象

无。

必需参数

ear file
指定要安装的 .ear 文件的路径。

可选参数

options
指定命令的安装选项。

示例

  • 使用 Jacl:
    $AdminApp install c:/apps/myapp.ear
  • 使用 Jython:
    print AdminApp.install('c:/apps/myapp.ear')
此命令可以使用许多选项。您可以使用以下命令获取企业归档 (EAR) 文件的有效选项列表:

使用 Jacl:

$AdminApp options myApp.ear
使用 Jython:
print AdminApp.options('myApp.ear')
您还可以使用以下命令获取每个对象的帮助:

使用 Jacl:

$AdminApp help MapModulesToServers
使用 Jython:
print AdminApp.help('MapModulesToServers')

installInteractive

使用 installInteractive 命令并提供标准文件名和安装选项字符串来以交互方式安装应用程序。options 参数是可选的。

目标对象

无。

必需参数

ear file
指定要安装的 .ear 文件的路径。

可选参数

options
指定命令的安装选项。

示例

  • 使用 Jacl:
    $AdminApp installInteractive c:/websphere/appserver/installableApps/jmsample.ear
  • 使用 Jython:
    print AdminApp.installInteractive('c:/websphere/appserver/installableApps/jmsample.ear')

isAppReady

使用 isAppReady 命令来确定是否已分发并且已准备好运行所指定的应用程序。如果应用程序已准备就绪,那么返回值 true,如果应用程序未准备就绪,那么返回值 false。用于调用 isAppReady 的脚本通常安装或更新应用程序,然后循环调用,直到在启动应用程序之前调用返回值 true。 当 wsadmin 工具未连接到服务器时,此命令不受支持。

目标对象

无。

必需参数

application name
指定相关应用程序的名称。

可选参数

ignoreUnknownState
测试是否已分发并且已准备好运行所指定的应用程序。ignoreUnknownState 参数的有效值包括 truefalse。如果您指定值 true,那么具有未知状态的节点和服务器将不会包括在最终的就绪返回中。如果应用程序已准备就绪,那么命令返回值 true,如果应用程序未准备就绪,那么返回值 false。当 wsadmin 工具未连接到服务器时,此命令不受支持。

样本输出

如果指定了 application name 参数,那么将返回以下样本输出:
ADMA5071I: Distribution status check started for application 
           DefaultApplication.WebSphere:cell=Node03Cell,node=myNode,distribution=true
ADMA5011I: The cleanup of the temp directory for application DefaultApplication is complete.
ADMA5072I: Distribution status check completed for application DefaultApplication.true
如果指定了 application name 和 ignoreUnknownState 参数,那么将返回以下样本输出:
ADMA5071I: Distribution status check started for application TEST.WebSphere:cell=myCell,node=myNode,
					distribution=unknown
ADMA5011I: The cleanup of the temp directory for application TEST is complete.
ADMA5072I: Distribution status check completed for application TEST.false

示例

下列示例仅指定了 application name 参数:
  • 使用 Jacl:
    set result [$AdminApp isAppReady 
    DefaultApplication]
    while {$result == "false"} {
       ### Wait 5 seconds before checking again
       after 5000   
    set result [$AdminApp isAppReady DefaultApplication]
    }
    puts "Starting application..."
  • 使用 Jython:
    import time
    result = AdminApp.isAppReady('DefaultApplication')
    while (result == "false")
    :   ### Wait 5 seconds before checking again
        time.sleep(5)   
        result = AdminApp.isAppReady
    ('DefaultApplication')
    print("Starting application...")
下列示例指定了 application name 和 ignoreUnknownState 参数:
  • 使用 Jacl:
    set result [$AdminApp isAppReady
    DefaultApplication]
    while {$result == "false"} {
       ### Wait 5 seconds before checking again
       after 5000   
       set result [$AdminApp isAppReady
    DefaultApplication]
    }
    puts "Starting application..."
  • 使用 Jython:
    import time
    result = AdminApp.isAppReady
    ('DefaultApplication')
    while (result == "false"):
       ### Wait 5 seconds before checking again
       time.sleep(5)   
       result = AdminApp.isAppReady
    ('DefaultApplication')
    print("Starting application...")

list

使用 list 命令来列示配置中已安装的应用程序。

目标对象

无。

必需参数

无。

可选参数

target
列出配置中安装在给定目标范围的应用程序。

样本输出

adminconsole 
DefaultApplication 
ivtApp

示例

  • 使用 Jacl:
    $AdminApp list
  • 使用 Jython:
    print AdminApp.list()
下列示例为 target 参数指定了值:
  • 使用 Jacl:
    $AdminApp list WebSphere:cell=myCell,node=myNode,server=myServer
  • 使用 Jython:
    print AdminApp.list("WebSphere:cell=myCell,node=myNode,server=myServer")

listModules

使用 listModules 命令来列示应用程序中的模块。

目标对象

无。

必需参数

application name
指定相关的应用程序。

可选参数

options
指定安装了模块的应用程序服务器的列表。options 参数是可选的。有效选项为 -server。

样本输出

以下示例由 appname、#、模块 URI、+ 和 DD URI 并置而成。您可将此字符串传递到 editeditInteractive AdminApp 命令。
ivtApp#ivtEJB.jar+META-INF/ejb-jar.xml
ivtApp#ivt_app.war+WEB-INF/web.xml

示例

  • 使用 Jacl:
    $AdminApp listModules ivtApp
  • 使用 Jython:
    print AdminApp.listModules('ivtApp')

options

使用 options 命令可显示用于安装企业归档 (EAR) 文件的选项列表。

目标对象

无。

必需参数

无。

可选参数

EAR 文件
指定相关的 EAR 文件。
application name
指定要对其显示用于编辑现有应用程序的选项列表的应用程序。
application module name
指定要对其显示用于编辑现有应用程序中的模块的选项列表的模块名。此参数需要与由 listModules 命令返回的输出相同的模块名称格式。
file, operations
显示用于安装或更新应用程序或应用程序模块文件的选项列表。指定下列其中一个有效值:
  • installapp - 使用此选项可安装所指定的文件。
  • updateapp - 使用此选项并用已指定的文件可更新现有应用程序。
  • addmodule - 使用此选项可将指定的模块文件添加至现有应用程序。
  • updatemodule - 使用此选项并用已指定的模块文件可更新应用程序中的现有模块。

样本输出

WASX7112I: The following options are valid for "ivtApp"
MapRolesToUsers
BindJndiForEJBNonMessageBinding
MapEJBRefToEJB
MapWebModToVH
MapModulesToServers
distributeApp
nodistributeApp
useMetaDataFromBinary
nouseMetaDataFromBinary
createMBeansForResources
nocreateMBeansForResources
reloadEnabled
noreloadEnabled
verbose
installed.ear.destination
reloadInterval

示例

以下示例 options 命令将返回 EAR 文件的有效选项:
  • 使用 Jacl:
    $AdminApp options c:/websphere/appserver/installableApps/ivtApp.ear
  • 使用 Jython:
    print AdminApp.options('c:/websphere/appserver/installableApps/ivtApp.ear')
以下示例 options 命令将返回应用程序的有效选项:
  • 使用 Jacl:
    $AdminApp options ivtApp
  • 使用 Jython:
    print AdminApp.options('ivtApp')
以下示例 options 命令将返回应用程序模块的有效选项:
  • 使用 Jacl:
    $AdminApp options ivtApp#ivtEJB.jar+META-INF/ejb-jar.xml
  • 使用 Jython:
    print AdminApp.options('ivtApp#ivtEJB.jar+META-INF/ejb-jar.xml')
以下示例 options 命令将返回输入文件请求的操作可以使用的有效选项:
  • 使用 Jacl:
    $AdminApp options c:/websphere/appserver/installableApps/ivtApp.ear updateapp
  • 使用 Jython:
    print AdminApp.options('c:/websphere/appserver/installableApps/ivtApp.ear', 'updateapp')

publishWSDL

使用 publishWSDL 命令将在 application name 参数中指定的应用程序的 Web Service 描述语言 (WSDL) 文件发布到在 file name 参数中指定的文件。

目标对象

无。

必需参数

file name
指定相关文件。
application name
指定相关应用程序。

可选参数

SOAP address prefixes
指定要使用的 SOAP 地址前缀。

样本输出

publishWSDL 命令不会返回输出。

示例

以下示例 publishWSDL 命令将指定应用程序名称和文件名:
  • 使用 Jacl:
    $AdminApp publishWSDL JAXRPCHandlerServer c:/temp/a.zip
  • 使用 Jython:
    print AdminApp.publishWSDL('JAXRPCHandlerServer', 'c:/temp/a.zip')
以下示例 publishWSDL 命令将指定应用程序名称、文件名和 SOAP 地址前缀参数值:
  • 使用 Jacl:
    $AdminApp publishWSDL JAXRPCHandlersServer c:/temp/a.zip {{JAXRPCHandlersServerApp.war 
    {{http http://localhost:9080}}}}
  • 使用 Jython:
    print AdminApp.publishWSDL('JAXRPCHandlersServer', 'c:/temp/a.zip', '[[JAXRPCHandlersServerApp.war
     [[http http://localhost:9080]]]]')

searchJNDIReferences

使用 searchJNDIReferences 命令可列示特定节点上引用了 Java 命名和目录接口 (JNDI) 名称的应用程序。

目标对象

无。

必需参数

node configuration ID
指定相关节点的配置标识。

可选参数

options
指定要使用的选项。

样本输出

WASX7410W: This operation may take a while depending on the number of applications installed in your system.
MyApp
MapResRefToEJB :ejb-jar-ic.jar : [eis/J2CCF1]

示例

以下示例假定已经安装了一个名为 MyApp 的应用程序,它的 JNDI 名称为 eis/J2CCF1
  • 使用 Jacl:
    $AdminApp searchJNDIReferences $node {-JNDIName eis/J2CCF1 -verbose}
  • 使用 Jython:
    print AdminApp.searchJNDIReferences(node, '[-JNDIName eis/J2CCF1 -verbose]')

taskInfo

使用 taskInfo 命令可提供有关应用程序文件的特定任务选项的信息。在 V5.x 和 V6.x 中,执行相似或完全相同操作的许多任务名称是不同的。如果要从 V5.x 迁移至 V6.x,那么可能需要更新现有脚本。

目标对象

无。

必需参数

EAR 文件
指定相关的 EAR 文件。
task name
指定要对其请求信息的任务。

可选参数

无。

样本输出

MapWebModToVH: Selecting virtual hosts for web modules
Specify the virtual host where you want to install the web modules that are contained in
your application. Web modules can be installed on the same virtual host or dispersed among several hosts.
Each element of the MapWebModToVH task consists of the following three fields: "webModule," "uri," "virtualHost."
Of these fields, the following fields might be assigned new values: "virtualHost"and the following are 
required: "virtualHost"

The current contents of the task after running default bindings are:
webModule: JavaMail Sample WebApp
uri: mtcomps.war,WEB-INF/web.xml
virtualHost: default_host

示例

  • 使用 Jacl:
    $AdminApp taskInfo c:/websphere/appserver/installableApps/jmsample.ear MapWebModToVH
  • 使用 Jython:
    print AdminApp.taskInfo('c:/websphere/appserver/installableApps/jmsample.ear', 'MapWebModToVH')

卸载

使用 uninstall 命令来卸载现有应用程序。

目标对象

无。

必需参数

application name
指定要卸载的应用程序的名称。

可选参数

options
指定用于卸载的选项。

样本输出

ADMA5017I: Uninstallation of myapp started.
ADMA5104I: Server index entry for myCellManager was updated successfully.
ADMA5102I: Deletion of config data for myapp from config 
repository completed successfully.
ADMA5011I: Cleanup of temp dir for app myapp done.
ADMA5106I: Application myapp uninstalled successfully.

示例

  • 使用 Jacl:
    $AdminApp uninstall myApp
  • 使用 Jython:
    print AdminApp.uninstall('myApp')

更新

使用 update 命令以非交互方式更新应用程序。此命令支持对应用程序子组件或整个应用程序进行添加、除去和更新。提供应用程序名、content type 和更新选项。

目标对象

无。

必需参数

application name
指定要更新的应用程序的名称。
content type
使用 content type 参数指示您要更新部分应用程序,还是整个应用程序。以下列表包含 update 命令的有效 content type 值:
  • app - 指示您要更新整个应用程序。此选项与使用 install 命令指出 update 选项是相同的。 使用 app 值作为 content type,您必须将 update 操作选项指定为值。使用内容选项提供新的企业归档 (EAR) 文件。您还可指定绑定信息和应用程序选项。缺省情况下,已安装模块的绑定信息合并在已更新模块的绑定信息中。要更改此缺省行为,指定 update.ignore.old 选项或 update.ignore.new 选项。
  • file - 指示您要更新单个文件。您可在已部署应用程序中的任何范围内添加、除去或更新个别文件。使用 file 值作为 content type,您必须使用 operation 选项对文件执行操作。根据 operation 的类型,需要更多选项。对于文件添加和更新,您必须使用 contents 选项和 conetnturi 选项提供文件内容和相对于 EAR 文件根的文件 URI。对于文件删除,您必须使用 contenturi 选项提供相对于 EAR 文件根的文件 URI,这是唯一需要的输入。您提供的任何其他选项都将被忽略。
  • modulefile - 指示您要更新模块。您可添加、除去或更新单个应用程序模块。如果您指定 modulefile 值作为 content type,您必须使用 operation 选项指示您要对模块执行的操作。 根据 operation 的类型,需要更多选项。对于安装新模块或更新应用程序中现有模块,您必须使用 contents 选项和 conetnturi 选项指示文件内容和相对于 EAR 文件根的文件 URI。您还可指定适用于新模块或已更新模块的绑定信息和应用程序选项。对于模块更新,缺省情况下,已安装模块的绑定信息合并在输入模块的绑定信息中。要更改此缺省行为,指定 update.ignore.old 选项或 update.ignore.new 选项。要删除模块,指示相对于 EAR 文件根的文件 URI。
    限制: 通常,无法添加或更新依赖于其外部的其他类(例如可选包或库中的类)的模块。客户端处理涉及对输入模块类的自省,除非还解析类依赖性,否则那些类可能不会成功装入。如果您使必需类在可通过 wsadmin 脚本编制访问的文件系统上可用,那么可添加或更新模块。通过 wsadmin 脚本编制,可修改 profile_root/properties/wsadmin.properties 文件中的 com.ibm.ws.scripting.classpath 属性来包括那些类,以便类装入器可对它们进行解析。
  • partialapp - 指示您要更新部分应用程序。 使用以 .zip 压缩文件格式提供的应用程序组件的子集,您可以更新、添加和删除文件和模块。压缩文件不是有效的 Java 2 Platform Enterprise Edition (J2EE) 归档。但是,它以 EAR 文件中显示应用程序 artifact 的相同分层构造包含这些应用程序 artifact。有关如何构造部分应用程序压缩文件的更多信息,请参阅 Java API 部分。如果您指示 partialapp 值作为内容类型,请使用内容选项指定压缩文件的位置。当提供部分应用程序作为更新输入时,无法指定绑定信息和应用程序选项,但如果已提供将忽略它们。

可选参数

options
有许多选项可用于 update 命令。有关 update 命令的每个有效选项的列表,请参阅使用 wsadmin 脚本编制的 AdminApp 对象 install、installInteractive、edit、editInteractive、update 和 updateInteractive 命令的选项

样本输出

Update of singleFile has started.
ADMA5009I: Application archive extracted at C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a1960f0\ext
Added files from partial ear: [] 
performFileOperation: source=C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a1960f0\ext,
dest=C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a1960f0\mrg, uri= META-INF/web.xml, op= add
Copying file from C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a1960f0\ext/META-INF/web.xml to 
C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a1960f0\mrg\META-INF\web.xml
Collapse list is: []
FileMergeTask completed successfully
ADMA5005I: Application singleFile configured in WebSphere repository
delFiles: []
delM: null
addM: null
Pattern for remove loose and mod:
Loose add pattern: META-INF/[^/]*|WEB-INF/[^/]*|.*wsdl
root file to be copied: META-INF/web.xml to 
C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a191b4e\workspace\cells\BAMBIE\applications\
singleFile.ear\deployments\singleFile/META-INF/web.xml
ADMA5005I: Application singleFile configured in WebSphere repository xmlDoc: [#document: null]
root element: [app-delta: null]
****** delta file name: C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a191b4e\workspace\cells\BAMBIE\applications\
singleFile.ear/deltas/delta-1079548405564
ADMA5005I: Application singleFile configured in WebSphere repository
ADMA6011I: Deleting directory tree C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a1960f0
ADMA5011I: Cleanup of temp dir for app singleFile done.
Update of singleFile has ended.

示例

  • 使用 Jacl:
    [AIX Solaris HP-UX Linux Windows]
    $AdminApp update myApp file {-operation add -contents c:/apps/myApp/web.xml 
    -contenturi META-INF/web.xml}
    [z/OS]
    $AdminApp update myApp file {-operation add -contents /apps/myApp/web.xml 
    -contenturi META-INF/web.xml}
  • 使用 Jython:
    [AIX Solaris HP-UX Linux Windows]
    print AdminApp.update('myApp', 'file', '[-operation add -contents c:/apps/myApp/web.xml 
    -contenturi META-INF/web.xml]')
    [z/OS]
    print AdminApp.update('myApp', 'file', '[-operation add -contents /apps/myApp/web.xml 
    -contenturi META-INF/web.xml]')
  • 使用 Jython 列表:
    [AIX Solaris HP-UX Linux Windows]
    print AdminApp.update('myApp', 'file', ['-operation', 'add', '-contents', 'c:/apps/myApp/web.xml',
     '-contenturi',  'META-INF/web.xml'])
    [z/OS]
    print AdminApp.update('myApp', 'file', ['-operation', 'add', '-contents', '/apps/myApp/web.xml', 
    '-contenturi',  'META-INF/web.xml'])

updateAccessIDs

使用 updateAccessIDs 命令来更新为应用程序中定义的各种角色指定的用户和组的访问标识信息。系统将从用户注册表中读取访问标识,并将这些标识保存在应用程序绑定中。此操作将提高应用程序的运行时性能。在安装应用程序之后或者编辑已安装应用程序的特定于安全角色的信息之后使用此命令。当 wsadmin 工具的 -conntype 选项设置为 NONE 时不能调用此方法。您必须连接到服务器以调用此命令。

目标对象

无。

必需参数

application name
指定相关应用程序的名称。
bALL
bALL 布尔参数将检索和保存应用程序绑定中的用户和组的所有访问标识。指定 false 就会检索在应用程序绑定中没有访问标识的用户或组的访问标识。

示例

  • 在指定 true 的情况下使用 Jacl:
    $AdminApp updateAccessIDs myapp true
  • 在指定 false 的情况下使用 Jacl:
    $AdminApp updateAccessIDs myapp false
  • 在指定 true 的情况下使用 Jython:
    print AdminApp.updateAccessIDs('myapp', 1)
  • 在指定 false 的情况下使用 Jython:
    print AdminApp.updateAccessIDs('myapp', 0)

updateInteractive

使用 updateInteractive 命令添加、除去和更新应用程序子组件或整个应用程序。当您使用交互方式更新应用程序模块或整个应用程序时,您用于配置绑定信息的步骤类似于应用于 installInteractive 命令的步骤。如果您更新文件或部分应用程序,您不可以使用用于配置绑定信息的步骤。在这种情况下,使用的步骤与您使用 update 命令的步骤相同。

目标对象

无。

必需参数

application name
指定要更新的应用程序的名称。
content type
使用 content type 参数指示您要更新部分应用程序,还是整个应用程序。以下列表包含 updateInteractive 命令的有效 content type 值:
  • app - 指示您要更新整个应用程序。此选项与使用 install 命令指出 update 选项是相同的。 使用 app 值作为 content type,您必须将 update 操作选项指定为值。使用内容选项提供新的企业归档 (EAR) 文件。您还可指定绑定信息和应用程序选项。缺省情况下,已安装模块的绑定信息合并在已更新模块的绑定信息中。要更改此缺省行为,指定 update.ignore.old 选项或 update.ignore.new 选项。
  • file - 指示您要更新单个文件。您可在已部署应用程序中的任何范围内添加、除去或更新个别文件。使用 file 值作为 content type,您必须使用 operation 选项对文件执行操作。根据 operation 的类型,需要更多选项。对于文件添加和更新,您必须使用 contents 选项和 conetnturi 选项提供文件内容和相对于 EAR 文件根的文件 URI。对于文件删除,您必须使用 contenturi 选项提供相对于 EAR 文件根的文件 URI,这是唯一需要的输入。您提供的任何其他选项都将被忽略。
  • modulefile - 指示您要更新模块。您可添加、除去或更新单个应用程序模块。如果您指定 modulefile 值作为 content type,您必须使用 operation 选项指示您要对模块执行的操作。 根据 operation 的类型,需要更多选项。对于安装新模块或更新应用程序中现有模块,您必须使用 contents 选项和 conetnturi 选项指示文件内容和相对于 EAR 文件根的文件 URI。您还可指定适用于新模块或已更新模块的绑定信息和应用程序选项。对于模块更新,缺省情况下,已安装模块的绑定信息合并在输入模块的绑定信息中。要更改此缺省行为,指定 update.ignore.old 选项或 update.ignore.new 选项。要删除模块,指示相对于 EAR 文件根的文件 URI。
    限制: 通常,无法添加或更新依赖于其外部的其他类(例如可选包或库中的类)的模块。客户端处理涉及对输入模块类的自省,除非还解析类依赖性,否则那些类可能不会成功装入。如果您使必需类在可通过 wsadmin 脚本编制访问的文件系统上可用,那么可添加或更新模块。通过 wsadmin 脚本编制,可修改 profile_root/properties/wsadmin.properties 文件中的 com.ibm.ws.scripting.classpath 属性来包括那些类,以便类装入器可对它们进行解析。
  • partialapp - 指示您要更新部分应用程序。 使用以 .zip 压缩文件格式提供的应用程序组件的子集,您可以更新、添加和删除文件和模块。压缩文件不是有效的 Java 2 Platform Enterprise Edition (J2EE) 归档。但是,它以 EAR 文件中显示应用程序 artifact 的相同分层构造包含这些应用程序 artifact。有关如何构造部分应用程序压缩文件的更多信息,请参阅 Java API 部分。如果您指示 partialapp 值作为内容类型,请使用内容选项指定压缩文件的位置。当提供部分应用程序作为更新输入时,无法指定绑定信息和应用程序选项,但如果已提供将忽略它们。

可选参数

options
有许多选项可用于 updateInteractive 命令。有关 updateInteractive 命令的每个有效选项的列表,请参阅使用 wsadmin 脚本编制的 AdminApp 对象 install、installInteractive、edit、editInteractive、update 和 updateInteractive 命令的选项

样本输出

Getting tasks for: myApp
WASX7266I: A was.policy file exists for this application; would you like to display it? [No]

Task[4]: Binding enterprise beans to JNDI names
Each non message driven enterprise bean in your application or module must be bound to a JNDI name.
EJB Module:  Increment EJB module
EJB:  Increment
URI:  Increment.jar,META-INF/ejb-jar.xml
JNDI Name:  [Inc]:

Task[10]: Specifying the default data source for 
EJB 2.x modules
Specify the default data source for 
the EJB 2.x Module containing 2.x CMP beans.

WASX7349I: Possible value for resource authorization is container or per connection factory
EJB Module:  Increment EJB module
URI:  Increment.jar,META-INF/ejb-jar.xml
JNDI Name:  [DefaultDatasource]:
Resource Authorization:  [Per connection factory]:

Task[12]: Specifying data sources for individual 2.x CMP beans
Specify an optional data source for each 2.x CMP bean. Mapping a specific data source to a CMP bean overrides 
the default data source for the module containing the enterprise bean.

WASX7349I: Possible value for resource authorization is container or per connection factory
EJB Module:  Increment EJB module
EJB:  Increment
URI:  Increment.jar,META-INF/ejb-jar.xml
JNDI Name:  [DefaultDatasource]:
Resource Authorization:  [Per connection factory]:container
Setting "Resource Authorization" to "cmpBinding.container"

Task[14]: Selecting Application Servers
Specify the application server where you want to install modules that are contained in your application. 
Modules can be installed on the same server or dispersed among several servers.
Module:  Increment EJB module
URI:  Increment.jar,META-INF/ejb-jar.xml
Server:  [WebSphere:cell=myCell,node=myNode,server=server1]:

Task[16]: Selecting method protections for unprotected methods for 2.x EJB
Specify whether you want to assign security role to the unprotected method, add the method to the exclude list, or mark 
the method as unchecked.
EJB Module:  Increment EJB module
URI:  Increment.jar,META-INF/ejb-jar.xml
Protection Type:  [methodProtection.uncheck]:
Task[18]: Selecting backend ID
Specify the selection for the BackendID
EJB Module:  Increment EJB module
URI:  Increment.jar,META-INF/ejb-jar.xml
BackendId list:  CLOUDSCAPE_V50_1
CurrentBackendId:  [CLOUDSCAPE_V50_1]:

Task[21]: Specifying application options
Specify the various options available to prepare and install your application.
Pre-compile JSP:  [No]:
Deploy EJBs:  [No]:
Deploy WebServices:  [No]:

Task[22]: Specifying EJB deploy options
Specify the options to deploy EJB.
....EJB Deploy option is not enabled.

Task[24]: Copy WSDL files
Copy WSDL files
....This task does not require any user input

Task[25]: Specify options to deploy web services
Specify options to deploy web services
....Web services deploy option is not enabled.
Update of myApp has started.

ADMA5009I: Application archive extracted at C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a48e969\ext/Increment.jar
FileMergeTask completed successfully
ADMA5005I: Application myApp configured in WebSphere repository
delFiles: []
delM: null
addM: [Increment.jar, ]
Pattern for remove loose and mod:
Loose add pattern: META-INF/[^/]*|WEB-INF/[^/]*|.*wsdl
root file to be copied: 
META-INF/application.xml to C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a487089\workspace\cells\BAMBIE\
applications\testSM.ear\deployments\testSM/META-INF/application.xml
del files for full module add/update: []
ADMA6017I: Saved document C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a487089\workspace\cells\BAMBIE\
applications\testSM.ear\deployments\testSM/Increment.jar\META-INF/ejb-jar.xml
ADMA6016I: Add to workspace Increment.jar/META-INF/ejb-jar.xml
ADMA6017I: Saved document C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a487089\workspace\cells\BAMBIE\
applications\testSM.ear\deployments\testSM/Increment.jar\META-INF/MANIFEST.MF
ADMA6016I: Add to workspace Increment.jar/META-INF/MANIFEST.MF
ADMA6017I: Saved document C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a487089\workspace\cells\BAMBIE\
applications\testSM.ear\deployments\testSM/Increment.jar\META-INF/ibm-ejb-jar-bnd.xmi
ADMA6016I: Add to workspace Increment.jar/META-INF/ibm-ejb-jar-bnd.xmi
ADMA6017I: Saved document C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a487089\workspace\cells\BAMBIE\
applications\testSM.ear\deployments\testSM/Increment.jar\META-INF/Table.ddl
ADMA6016I: Add to workspace Increment.jar/META-INF/Table.ddl
ADMA6017I: Saved document C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a487089\workspace\cells\BAMBIE\
applications\testSM.ear\deployments\testSM/Increment.jar\META-INF/ibm-ejb-jar-ext.xmi
ADMA6016I: Add to workspace Increment.jar/META-INF/ibm-ejb-jar-ext.xmi
add files for full module add/update: [Increment.jar/META-INF/ejb-jar.xml, Increment.jar/META-INF/MANIFEST.MF, 
Increment.jar/META-INF/ibm-ejb-jar-bnd.xmi, 
Increment.jar/META-INF/Table.ddl, Increment.jar/META-INF/ibm-ejb-jar-ext.xmi]
ADMA5005I: Application myApp configured in WebSphere repository
xmlDoc: [#document: null]
root element: [app-delta: null]
****** delta file name: C:\asv\b0403.04\WebSphere\AppServer\wstemp\Scriptfb5a487089\workspace\cells\BAMBIE\
applications\testSM.ear/deltas/delta-1079551520393
ADMA5005I: Application myApp configured in WebSphere repository
ADMA6011I: Deleting directory tree C:\DOCUME~1\lavena\LOCALS~1\Temp\app_fb5a48e969
ADMA5011I: Cleanup of temp dir for app myApp done.
Update of myApp has ended.

示例

  • 使用 Jacl:
    [AIX Solaris HP-UX Linux Windows]
    $AdminApp updateInteractive myApp modulefile {-operation add -contents c:/apps/myApp/Increment.jar 
    -contenturi Increment.jar -nodeployejb -BindJndiForEJBNonMessageBinding {{"Increment EJB module" 
    Increment Increment.jar,META-INF/ejb-jar.xml Inc}}}
    [z/OS]
    $AdminApp updateInteractive myApp modulefile {-operation add -contents /apps/myApp/Increment.jar 
    -contenturi Increment.jar -nodeployejb -BindJndiForEJBNonMessageBinding {{"Increment EJB module" 
    Increment Increment.jar,META-INF/ejb-jar.xml Inc}}}
  • 使用 Jython:
    [AIX Solaris HP-UX Linux Windows]
    print AdminApp.updateInteractive('myApp', 'modulefile', '[-operation add -contents c:/apps/myApp/Increment.jar 
    -contenturi Increment.jar -nodeployejb -BindJndiForEJBNonMessageBinding [["Increment EJB module" 
    Increment Increment.jar,META-INF/ejb-jar.xml Inc]]]')
    [z/OS]
    print AdminApp.updateInteractive('myApp', 'modulefile', '[-operation add -contents /apps/myApp/Increment.jar 
    -contenturi Increment.jar -nodeployejb -BindJndiForEJBNonMessageBinding [["Increment EJB module" 
    Increment Increment.jar,META-INF/ejb-jar.xml Inc]]]')
  • 使用 Jython 列表:
    [AIX Solaris HP-UX Linux Windows]
    bindJndiForEJBValue = [["Increment EJB module", "Increment","Increment.jar,META-INF/ejb-jar.xml", "Inc"]]
    
    print AdminApp.updateInteractive('myApp', 'modulefile', ['-operation', 'add',
     '-contents', 'c:/apps/myApp/Increment.jar', '-contenturi', 'Increment.jar', '-nodeployejb',
     '-BindJndiForEJBNonMessageBinding', bindJndiForEJBValue])
    [z/OS]
    bindJndiForEJBValue = [["Increment EJB module", "Increment", "Increment.jar,META-INF/ejb-jar.xml", "Inc"]]
    
    print AdminApp.updateInteractive('myApp', 'modulefile', ['-operation', 'add',
     '-contents',  '/apps/myApp/Increment.jar', '-contenturi', 'Increment.jar', '-nodeployejb',
     '-BindJndiForEJBNonMessageBinding', bindJndiForEJBValue])

查看

使用 view 命令来查看由 application name 参数指定的应用程序或模块的由 task name 参数指定的任务。使用 -tasknames 作为获取应用程序的有效任务名的列表的选项。 否则,指定一个或多个任务名作为选项。

目标对象

无。

必需参数

name
指定要查看的应用程序或模块的名称。

可选参数

bALL
bALL 布尔参数将检索和保存应用程序绑定中的用户和组的所有访问标识。指定 false 就会检索在应用程序绑定中没有访问标识的用户或组的访问标识。
-buildVersion
指定是否显示相关应用程序的构建版本。

样本输出

如果为 task name 参数指定了 taskoptions 值,那么此命令将返回以下信息:
MapModulesToServers
MapWebModToVH
MapRolesToUsers
如果为 task name 参数指定了 mapModulesToServers 任务,那么此命令将返回以下信息:
MapModulesToServers: Selecting Application Servers

Specify the application server where you want to install the modules that are contained in your 
application. Modules can be installed on the same server or dispersed among several servers:   

Module:  adminconsole
URI:  adminconsole.war,WEB-INF/web.xml
Server:  WebSphere:cell=juniartiNetwork,
node=juniartiManager,server=dmgr

示例

以下 view 命令示例可列示每个可用的任务名称:
  • 使用 Jacl:
    $AdminApp view DefaultApplication {-tasknames}
  • 使用 Jython:
    print AdminApp.view('DefaultApplication', ['-tasknames'])
以下 view 命令示例可返回有关 mapModulesToServer 任务的信息:
  • 使用 Jacl:
    $AdminApp view DefaultApplication {-MapModulesToServers}
  • 使用 Jython:
    print AdminApp.view('DefaultApplication', ['-MapModulesToServers'])
以下 view 命令示例将返回有关 AppDeploymentOptions 任务的信息:
  • 使用 Jacl:
    $AdminApp view DefaultApplication {-AppDeploymentOptions}
  • 使用 Jython:
    print AdminApp.view('DefaultApplication', '-AppDeploymentOptions')
以下 view 命令示例将返回 DefaultApplication 应用程序的构建版本:
  • 使用 Jacl:
    $AdminApp view DefaultApplication {-buildVersion}
  • 使用 Jython:
    print AdminApp.view('DefaultApplication', '-buildVersion')

指示主题类型的图标 参考主题



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