我正在尝试在WebLogic上远程部署应用程序。我在python脚本中使用WLST。
我正在使用deploy命令来执行此操作。当我给出我的远程机器可以访问的任何位置的战争路径时,一切顺利,但当我给任何远程机器无法访问的位置时,它会失败。
现在我知道默认情况下上传为false的解决方案,因此远程WebLogic需要访问war位置,但我已尝试设置upload true但仍然部署失败,并出现如下错误:
部署消息:weblogic.management.ManagementException:[Deployer:149003]无法访问应用程序“jamagent_AdminServer”的“/app/jamagentAdminServer.war”中的应用程序源信息。特定错误是:不存在应用程序文件。 没有可用的堆栈跟踪。
我错过了什么吗?我正在使用命令:
deploy('jamagent _'+ ServerName,jamagentwarpath +'/ jamagent'+ ServerName +'。war',targets = ServerName,timeout = 600000,upload ='true')
所以如果我删除upload='true'
子句并确保jamagentwarpath
是远程机器可以访问的位置,那么一切都很顺利。我希望我对自己的问题很清楚。
答案 0 :(得分:5)
我没有使用python版本,但根据weblogic.Deployer Command-Line Reference,它应该是相同的功能,除了-remote
选项之外,还需要-upload
选项:< / p>
表示weblogic.Deployer未在与Administration Server相同的计算机上运行,并且该命令中指定的源路径对Administration Server计算机本身有效。
答案 1 :(得分:2)
您应该删除upload='true'
选项并改为指定remote='true'
。
如果您在执行wlst脚本的计算机上有应用程序文件,并且想要在WL管理计算机上传输它们,则必须使用“upload”选项。
“remote”选项告诉“deploy”命令不搜索本地计算机(执行wlst脚本的位置)中的路径,而是搜索WL管理计算机上的路径。
“远程”选项仅适用于WLS 10.0或更高版本。请参阅WLS 10.0 WLST deploy command reference。