workclassoperations.py 脚本
可以使用 workclassoperations.py 脚本创建、更新和管理工作类。
用途
可以使用 workclassoperations.py 脚本完成下列操作:
- 创建和更新企业应用程序和通用服务器集群的工作类。
- 列示工作类中的规则。
- 列示工作类中的成员。
- 删除各种策略和通信协议的工作类。
- 设置缺省操作。
- 修改缺省操作。
- 访存缺省操作。
- 添加规则。
- 删除规则。
- 删除成员。
位置
这workclassoperations.py脚本位于app_server_root/bin目录。
使用情况
一般帮助的脚本用法如下所示:
./wsadmin.sh -lang jython -f workclassoperations.py特定于操作的帮助的脚本用法如下所示:
./wsadmin.sh -lang jython -f workclassoperations.py operation --help根据您发出命令的位置的不同,您可能必须指定 workclassoperation.py 脚本的路径。 例如,创建名为
Dmgr01 的概要文件,它位于 c:\app_server_root\profiles\Dmgr01\bin 目录中。./wsadmin.sh -lang jython -f ../../../bin/workclassoperations.py请注意,如果部署管理器未启动,则必须包含附加参数-conntype
NONE:./wsadmin.sh -lang jython -conntype NONE workclassoperations.py操作
- listWorkClasses
- 按类型列示工作类。 列表格式为workclassname type
appname/odrname deploymentname
- --type:指定要列示的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --type:指定要列示的工作类的类型:
- createWorkClass
- 创建工作类。 新的服务策略不包含任何应用程序模块或分类规则。 必须分别创建和关联应用程序模块和分类规则。
- :
- --type:指定要列示的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --nodename:指定节点的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --protocol:指定传输请求的通信协议。 当前支持的协议为 HTTP、IIOP、SOAP 和 JMS。
- --wcaction:指定当请求与指定工作类的成员匹配时要采取的默认操作。
- --module:指定要与成员关联的应用程序模块。 如果您指定--appname和--members参数。
- --members:指定特定于协议的模式:
- HTTP:/test1?/test2/*
- IIOP:ejbName:ejbMethod?ejbName:ejbMethod
- SOAP:webService:operationName?webService:operationName
- JMS:bus:destination?bus:destination
- --rule:指定分类规则,格式为“优先级?规则?操作”
- --virtualhost:指定虚拟主机。 如果您指定--type参数为GSP或者GRP。
- --type:指定要列示的工作类的类型:
- removeWorkClass:移除工作类。
- --type:指定要移除的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --type:指定要移除的工作类的类型:
- addMembers:将成员添加到工作类。 ODR 使用新成员匹配入局请求。
- --type:指定要移除的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --protocol:指定传输请求的通信协议。 当前支持的协议为 HTTP、IIOP、SOAP 和 JMS。
- --module:指定要与成员关联的应用程序模块。 如果您指定--appname和--members参数。
- --members:指定特定于协议的模式:
- HTTP:/test1?/test2/*
- IIOP:ejbName:ejbMethod?ejbName:ejbMethod
- SOAP:webService:operationName?webService:operationName
- JMS:bus:destination?bus:destination
- --ejbname:指定 EJB 的名称。 仅当您指定--protocol参数为JMS和--module参数为IIOP。
- --type:指定要移除的工作类的类型:
- removeMembers:从工作类移除成员。 ODR 不再使用该成员。
- --type:指定要修改的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --protocol:指定传输请求的通信协议。 当前支持的协议为 HTTP、IIOP、SOAP 和 JMS。
- --module:指定从其解除与成员关联的应用程序模块。 如果指定 --appname 和 --members 参数,那么需要此项。
- --members:指定特定于协议的模式:
- HTTP:/test1?/test2/*
- IIOP:ejbName:ejbMethod?ejbName:ejbMethod
- SOAP:webService:operationName?webService:operationName
- JMS:bus:destination?bus:destination
- --type:指定要修改的工作类的类型:
- listMembers:列示工作类的成员。
- --type:指定要列示的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --nodename:指定节点的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --protocol:指定传输请求的通信协议。 当前支持的协议为 HTTP、IIOP、SOAP 和 JMS。
- --type:指定要列示的工作类的类型:
- addRules:将由 ODR 使用的分类规则添加到工作类。 如果你使用类似通配符发出命令'%' o n UNIX 操作系统,将转义序列 (\%%) 替换为 (\%)。
- --type:指定要修改的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --nodename:指定节点的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --rule:指定分类规则,格式为“优先级?规则?操作”
- --type:指定要修改的工作类的类型:
- removeRule:从工作类移除分类规则。 ODR 不再使用该规则。
- --type:指定要修改的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --expression:指定规则表达式。
- --priority:指定要匹配的规则的优先级。 首先匹配具有最低优先级的规则。
- --type:指定要修改的工作类的类型:
- listRules:列示分类规则。
- --type:指定要修改的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --type:指定要修改的工作类的类型:
- modifyDefaultAction:编辑工作类的缺省操作。
- --type:指定要修改的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --wcaction:指定当请求与指定工作类的成员匹配时要采取的默认操作。
- --type:指定要修改的工作类的类型:
- getDefaultAction:指定工作类的缺省操作。
- --type:指定要列示的工作类的类型:
- ASP:应用程序服务策略
- ARP:应用程序路由策略
- GSP:通用服务器服务策略
- GRP:通用服务路由策略
- --appname:指定应用程序的名称。 如果您指定--type参数为ASP或者ARP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --type:指定要列示的工作类的类型:
- modifyVirtualHost:编辑工作类的虚拟主机。
- --type:指定要修改的工作类的类型。 有效类型为 GSP 和 GRP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- --virtualhost:指定虚拟主机。 如果您指定--type参数为GSP或者GRP。
- getVirtualHost:列示工作类的虚拟机。
- --type:指定要列示的工作类的类型。 有效类型为 GSP 和 GRP。
- --odrname:指定随需应变路由器 (ODR) 的名称。 如果您指定--type参数为GSP或者GRP。
- --wcname:指定指定类型内工作类的唯一名称。
- :
示例
列示所有工作类:
./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses列示应用程序 Trade 的所有工作类:
./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses
--appname Trade使用 reject 且拒绝代码为 404 的缺省操作创建应用程序 Trade 的 HTTP 应用程序路由策略工作类:
./wsadmin.sh -lang jython -f workclassoperations.py createWorkClass
--type ARP --wcname CustomWorkClass --protocol HTTP --wcaction "reject?404" --appname Trade
--module myModule.war --members "/test1?/test2"列示应用程序 Trade 的所有路由策略工作类:
./wsadmin.sh -lang jython -f workclassoperations.py listWorkClasses
--type ARP --appname Trade查看应用程序 Trade 的 HTTP 应用程序路由策略工作类的缺省操作:
./wsadmin.sh -lang jython -f workclassoperations.py getDefaultAction
--type ARP --wcname CustomWorkClass --appname Trade在 HTTP 应用程序服务策略工作类中为应用程序 Trade-edition1.0 将缺省操作修改为 Default_TC:
./wsadmin.sh -lang jython -f workclassoperations.py modifyDefaultAction --type ASP --wcname Default_HTTP_WC
--wcaction Default_TC --appname Trade-edition1.0将 DayTrader 应用程序的版本 1.2 的缺省 HTTP 工作类映射到服务策略 GOLD 的缺省事务类:
import java.lang.System as System
wasinstallroot=System.getProperty("was.install.root")
execfile(wasinstallroot+"/bin/IMPPYModules.py")
import java.lang.System as System
wasinstallroot=System.getProperty("was.install.root")
execfile(wasinstallroot+"/bin/IMPPYModules.py")
#application with name DayTrader installed with edition 1.2
appName="DayTrader-edition1.2"
#Default_TC_GOLD is the default transaction class mapped to service policy GOLD
modifyAppSLADefaultAction("Default_HTTP_WC", appName, tcName, 0)
AdminConfig.save()对于过渡用户:这WebSphere® Virtual Enterprise命令等同于IMPPYModules.py是XDPYModules.py。 如果你正在从WebSphere Virtual Enterprise,您可以继续使用XDPYModules.py命令,其操作与IMPPYModules.py命令。
将分类规则添加到应用程序 Trade 的应用程序服务策略工作类:
./wsadmin.sh -lang jython -f workclassoperations.py addRules --wcname CustomWorkClass
--appname Trade --type ARP --rule "1?clienthost=\'localhost\' and serverhost like \'\%%.ibm.com\'?permit?Trade"从应用程序 Trade 的应用程序服务策略工作类按优先级移除分类规则:
./wsadmin.sh -lang jython -f workclassoperations.py removeRule --wcname
CustomWorkClass --appname Trade --type ARP --priority 1移除应用程序 Trade 的 HTTP 应用程序路由策略工作类:
./wsadmin.sh -lang jython -f workclassoperations.py removeWorkClass --type ARP
--wcname CustomWorkClass --appname Trade