![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
Intelligent Management:运行时操作用户首选项管理任务
可以使用 Jacl 和 Jython 脚本语言利用 wsadmin 工具克隆、设置和获得首选项。使用 UserPreferences 组中的命令和参数。
用户首选项存储在单元上下文下或存储在每个资源类型的上下文中。以下列表在单元级别和每个资源级别给出示例:
- cells/myCell/preferences/User_1/preferenceset.xml
- cells/myCell/applications/TestAppA.ear/preferences/User_1/preferenceset.xml
- cells/myCell/nodes/myNode/servers/myServer/preferences/User_1/preferenceset.xml
- cells/myCell/clusters/myCluster/preferences/User_1/preferenceset.xml
- cells/myCell/serviceclasses/Platinum/preferences/User_1/preferenceset.xml
使用以下命令处理用于运行时操作的首选项:
有关使用 Jython 与首选项对象交互的示例,请参阅Jython 首选项对象命令。
clonePreference
使用 clonePreference 命令可将首选项从一个用户或角色复制到另一个用户或角色。
目标对象
父级的 configID。
必需参数
-name 指定要克隆的首选项的名称。(字符串,必需)
可选参数
- -scope:指定克隆首选项时要保存的首选项的范围。如果您没有指定范围,那么使用 configID 的范围。(字符串,可选)范围可以是下列其中的一个值:
- 应用程序
- 服务器
- 集群
- ServiceClasses
- -touser:指定为其检索首选项的用户。如果您没有指示此值,那么缺省情况下会将该用户标识用于在其中运行该命令的会话。(字符串,可选)
- -torole:指定为其检索首选项的角色。如果已指定 -touser 参数,那么忽略此值。(字符串,可选)
- -fromuser:指定获得首选项副本的用户。可以通过将用户置于列表中指示多个用户,例如:user1,user2,user3。请不要将空格置于该列表中。(字符串,可选)
- -fromrole:指定获得首选项副本的角色。(字符串,可选)
批处理方式示例用法
- 使用 Jython:
cellid= AdminConfig.getid("/Cell:myCell") AdminTask.clonePreference(cellid, '[-name ChartGroups -fromuser user1 -touser user2,user3,user4,user5]') AdminConfig.save()
- 使用 Jacl:
$AdminTask clonePreference cells/dabtcCell02|cell.xml#Cell_1 {-name ChartGroups -fromuser user1 -touser user2,user3,user4,user5}
交互方式示例用法
- 使用 Jython:
AdminTask.clonePreference('[-interactive]')
- 使用 Jacl:
$AdminTask clonePreference {-interactive}
getPreferences
通过传入角色或用户名,getPreferences 命令会根据指定的首选项文档返回首选项的集合。必须具有管理员特权才能获得某些用户或用户角色的首选项。
目标对象
父级的 configID。
必需参数
- -name:指定首选项的名称。(字符串,必需)
可选参数
- -scope:指定首选项的范围。可选择以下其中一个有效值:
- 应用程序
- 服务器
- 集群
- ServiceClasses
- -user:指定为其检索首选项的用户名。如果没有指示用户,那么缺省操作是使用运行该脚本的用户名。(字符串,可选)
- -role:指定要为其检索首选项的用户角色。(字符串,可选)
返回值
该命令会返回包含首选项的 DescriptivePropertyGroup 对象,或者,如果未找到首选项,会返回 null。
批处理方式示例用法
- 使用 Jython 字符串:
cellid= AdminConfig.getid("/Cell:myCell") AdminTask.getPreferences(cellid, '[-name ChartGroups -user user1]')
- 使用 Jacl:
$AdminTask getPreferences cells/dabtcCell02|cell.xml#Cell_1 {-name Reports -user user1}
交互方式示例用法
- 使用 Jython 字符串:
AdminTask.getPreferences('[-interactive]')
- 使用 Jacl:
$AdminTask getPreferences {-interactive}
setPreference
使用 setPreference 命令可设置首选项文档中的特定首选项。必须具有管理员特权才能设置某些用户或用户角色的首选项。
目标对象
父级的 configID。
必需参数
- -name:指定首选项的名称。(字符串,必需)
- -propertyLongName:指定属性组中属性的标准路径,由正斜杠 (/) 字符分隔。如果直接将该属性包含在根属性组中,那么可使用属性的短名称,因为它正好等于长名称。(字符串,必需)
- -propertyValue:指定要为首选项设置的新值。(字符串,必需)
可选参数
- -scope:指定克隆首选项时要保存的首选项的范围。如果您没有指定范围,那么使用 configID 的范围。(字符串,可选)范围可以是下列其中的一个值:
- 应用程序
- 服务器
- 集群
- ServiceClasses
- -user:指定要为其保存首选项的用户名。如果没有指示用户,那么缺省操作是使用运行该脚本的用户名。(字符串,可选)
- -role:指定要为其保存首选项的用户角色。(字符串,可选)
批处理方式示例用法
- 使用 Jython 字符串:
AdminTask.setPreference(cellid, '[-name myChartGroup -propertyLongName defaultChartSize -propertyValue large]')
- 使用 Jacl:
$AdminTask setPreference cells/dabtcCell02|cell.xml#Cell_1 {-name Reports -user user1 -propertyLongName defaultChartSize -propertyValue large}
交互方式示例用法
- 使用 Jython 字符串:
AdminTask.setPreference('[-interactive]')
- 使用 Jacl:
$AdminTask setPreference {-interactive}
Jython 首选项对象命令
使用下列示例利用 Jython 命令与首选项对象交互:
按用户列示首选项
prefSets = AdminConfig.list("PreferenceSet") print prefSets
为用户移除首选项
prefid = AdminConfig.getid("/PreferenceSet:User_1") AdminConfig.remove(prefid) AdminConfig.save()
列示所有用户的首选项,按用户分组
prefs = AdminConfig.list("Preferences") print prefs