【问题标题】:java Standalone Client to deploy war file to weblogic 14.1.1java独立客户端将war文件部署到weblogic 14.1.1
【发布时间】:2020-07-09 21:02:26
【问题描述】:

带有 wlfullclient.jar 的早期 Java 独立客户端用于将 jar 文件部署到 weblogic 服务器

import javax.enterprise.deploy.shared.ModuleType;
import javax.enterprise.deploy.spi.TargetModuleID;
import javax.enterprise.deploy.spi.exceptions.TargetException;
import javax.enterprise.deploy.spi.status.DeploymentStatus;
import javax.enterprise.deploy.spi.status.ProgressEvent;
import javax.enterprise.deploy.spi.status.ProgressListener;
import javax.enterprise.deploy.spi.status.ProgressObject;

import weblogic.deploy.api.spi.DeploymentOptions;
import weblogic.deploy.api.spi.WebLogicDeploymentManager;
import weblogic.deploy.api.spi.WebLogicTarget;
import weblogic.deploy.api.tools.SessionHelper;

参考链接:http://middlewaremagic.com/weblogic/?p=483

将weblogic迁移到14.1.1后,添加“wls-api.jar”或“com.oracle.weblogic.deployment.jar”、“javax.javaee-api.jar”和“wlthint3client.jar”添加到类路径,都会尝试获取 classnotfound 异常。

Exception in thread "main" java.lang.NoClassDefFoundError: weblogic/deploy/api/internal/SPIDeployerLogger
at weblogic.deploy.api.spi.deploy.WebLogicDeploymentManagerImpl.<init>(WebLogicDeploymentManagerImpl.java:108)
at weblogic.deploy.api.spi.deploy.WebLogicDeploymentManagerImpl.<init>(WebLogicDeploymentManagerImpl.java:124)
at weblogic.deploy.api.spi.factories.internal.DeploymentFactoryImpl.getDeploymentManager(DeploymentFactoryImpl.java:86)
at wls.api/weblogic.deploy.api.tools.SessionHelper.getRemoteDeploymentManager(SessionHelper.java:580)

还有其他方法可以实现 java 独立客户端以将 war 部署到 WebLogic 14.1.1 吗? 注意到 weblogic.jar 被映射为大量的 jars 并且不能添加许多 jars。

【问题讨论】:

  • 最简单的方法是将 weblogic.jar 添加到您的类路径中,但您需要在主机上安装 weblogic 服务器。
  • 嗨 Emmanuel Colling,感谢您的回答,但是客户端必须从不同的虚拟机运行,而不是从 weblogic 所在的同一个虚拟机运行。 weblogic.jar 清单中有大量没有任何类文件的 jars。
  • 因此,更好的解决方案可能是使用 REST Management API 来部署您的应用程序。因此,您将不再需要 WebLogic 类,并且您将能够从网络中的任何 VM 部署您的应用程序。阅读documentation了解详情。
  • 嗨 Emmanuel Collin,REST 管理 API 有问题,部署 api 无法获取 war 文件,而是必须传递绝对路径,我的客户端必须将 war 文件从其他 vm 上传到 weblogic 服务器。 wlthint3client 中是否还有其他类似 WebLogicDeploymentManager 的类?
  • 或许您应该考虑使用 Weblogic 部署工具 github.com/oracle/weblogic-deploy-tooling/blob/master/site/…

标签: weblogic jmx weblogic12c


【解决方案1】:

Weblogic RestFull api 具有传递文件的方法,因此我们可以使用 restFull api 远程部署

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-04
    • 1970-01-01
    • 2012-06-20
    • 2012-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多