有办法通过wsadmin程序在jython脚本中调用特定的函数吗?
# BusAndBusMemeber.py
def devCreateBus:
AdminTask.createSIBus('[-bus intjmsbus -description [SIBus intjmsbus] -busSecurity false]')
AdminTask.addSIBusMember('[-bus intjmsbus -node ctgNode01 -server MXServer]')
AdminConfig.save()
def devDeleteBus:
AdminTask.deleteSIBus('[-bus intjmsbus]')
AdminConfig.save()从服务器cmd提示符:
C:\IBM\WebSphere....\bin> wsadmin -conntype SOAP -user myUsername -password myPassword -lang jython -f BusAndBusMember.py devCreateBus
或
C:\IBM\WebSphere....\bin> wsadmin -conntype SOAP -user myUsername -password myPassword -lang jython -f BusAndBusMember.py devCreateBus
到目前为止,我能够执行jython脚本的唯一方法是简单地编写AdminTasks脚本。
谢谢。
发布于 2020-09-25 14:32:16
这有点麻烦,但您可以将其附加到脚本中:
globals()[sys.argv[0]]()另一种方法是将函数保存在这个文件中,并编写第二个python脚本,该脚本执行要调用哪些函数的逻辑:
import sys
execfile("BusAndBusMemeber.py")
if sys.argv[0] == "devCreateBus":
devCreateBus();
else:
print("Unknown arg %s" % sys.argv[0])发布于 2020-09-25 15:16:05
您还可以组合-profile和-c选项,如:
.wsadmin.sh -profile "functions.py“-c”打印devCreateBus()“
它仍然会在整个-profile脚本中运行,所以您可能只希望函数在其中,而不是一个“主”。
https://stackoverflow.com/questions/64065124
复制相似问题