$AdminApp view <applicationName> -MapResRefToEJB
可以列出为已部署的 EJB 模块定义的资源引用。但是,该命令的结果是纯文本(另外可能是本地化的)。要提取该信息,必须解析此文本,这不是很方便。有没有办法使用 $AdminConfig 以结构化的形式获取相同的信息(即应用程序的资源引用)?
问问题
2543 次
1 回答
6
AppManagement
MBean以结构化格式(向量AppDeploymentTasks
)提供此数据。wsadmin
要使用脚本 ( )获取此数据jython
:
import javax.management as mgmt
appName = sys.argv[0]
appMgmt = mgmt.ObjectName(AdminControl.completeObjectName("WebSphere:*,type=AppManagement"))
appInfo = AdminControl.invoke_jmx(appMgmt, "getApplicationInfo", [appName, java.util.Hashtable(), None], ["java.lang.String", "java.util.Hashtable", "java.lang.String"])
for task in appInfo :
if (task.getName() == "MapResRefToEJB") :
resRefs = task.getTaskData()
# skip the first row since it contains the headers
for i in range(1, len(resRefs)) :
resRef = resRefs[i]
print
print "URI:", resRef[4]
print "EJB:", resRef[3]
print "Name:", resRef[5]
print "Type:", resRef[6]
print "JNDI:", resRef[8]
于 2011-11-22T15:33:27.663 回答