我不知道如何通过T3协议远程部署War文件。
我想使用 Java代码通过T3协议远程部署War文件。我不知道如何用Java做到这一点。我不想使用 weblogic.Deployer :我想使用Java代码。
有人有Java示例远程部署War文件(通过T3协议,通过JNDI)?
否则,由于管理员JNDI,是否可以通过T3协议在远程weblogic上执行系统命令?
提前谢谢你,
答案 0 :(得分:1)
是的,您可以直接使用java进行部署。如果您正在努力寻找特定于Java的代码,请在搜索中使用术语JMX:
import weblogic.deploy.api.tools.*; //SesionHelper
import weblogic.deploy.api.spi .*; //WebLogicDeploymentManager
....
String protocol="t3";
String hostName="localhost";
String portString="7001";
String adminUser="weblogic";
String adminPassword="weblogic";
WebLogicDeploymentManager deployManager=SessionHelper.getRemoteDeploymentManager( protocol,hostName,portString,adminUser,adminPassword);
DeploymentOptions options = new DeploymentOptions();
Target targets[]=deployManager.getTargets();
Target deployTargets[]=new Target[1];
deployTargets[0]=targets[0]; //admin server
String appName="EARFile";
options.setName(appName);
ProgressObject processStatus=deployManager.distribute(deployTargets, new File("EARFile.ear"), null,options);
processStatus=deployManager.deploy(deployTargets, new File("EARFile.ear"), null,options);
DeploymentStatus stat = processStatus.getDeploymentStatus() ;
System.out.println("For EARFile.ear DeploymentStatus.getState(): " + stat.getState());
答案 1 :(得分:0)
我没有任何java代码可以利用t3协议在weblogic上部署工件,但我认为以下命令行命令可以帮助你编写这样的代码:
在Windows命令行中:
将war文件部署为应用程序:
C:\Users\s.taefi>java -classpath C:\Oracle\Middleware\Oracle_Home\wlserver\server\lib\weblogic.jar weblogic.Deployer -adminurl t3://localhost:7001 -username [Your username] -password [Your password] -upload -targets AdminServer -deploy -source [path to your war file]
将war文件部署为 shared-library :
C:\Users\s.taefi>java -classpath C:\Oracle\Middleware\Oracle_Home\wlserver\server\lib\weblogic.jar weblogic.Deployer -adminurl t3://localhost:7001 -username [Your username] -password [Your password] -upload -library -targets AdminServer -deploy -source [path to your war file]
使用以下方法测试:
Windows7 x64
Weblogic 12c
祝你好运。