Java 从weblogic群集获取实例ip

Java 从weblogic群集获取实例ip,java,cluster-computing,weblogic-10.x,Java,Cluster Computing,Weblogic 10.x,在如何使用weblogic获取集群内的实例URL方面,我遇到了一个问题 说明: 我们有两个域:X和Y。 在每个域中,我有两个簇:c01和c02 在每个集群中,我都有实例:s01、s02、s03、s04 在每个实例中,我们的系统都包含几个组件,让我们调用组件A、B、C和D。我想从A到D进行REST调用,它们仍然在同一个实例中。我们将如何以编程方式获取此REST服务的URL和端口 问题是,调用InetAddress或类似程序时,我只是获取集群URL。我也使用过MBean,但我们不确定它是否正确,因为

在如何使用weblogic获取集群内的实例URL方面,我遇到了一个问题

说明: 我们有两个域:X和Y。 在每个域中,我有两个簇:c01和c02 在每个集群中,我都有实例:s01、s02、s03、s04 在每个实例中,我们的系统都包含几个组件,让我们调用组件A、B、C和D。我想从A到D进行REST调用,它们仍然在同一个实例中。我们将如何以编程方式获取此REST服务的URL和端口

问题是,调用InetAddress或类似程序时,我只是获取集群URL。我也使用过MBean,但我们不确定它是否正确,因为在创建上下文时,我不会为Environment对象填写任何用户/通行证

我们不希望将其作为构建属性,因为我们不希望为每个不同的实例进行构建

环境: SpringIntegration Weblogic 10.3.3 运动衫 马文

谢谢

解决方案:

从RuntimeServiceBean获取:

service = new ObjectName(
                "com.bea:Name=RuntimeService,Type=weblogic.management.mbeanservers.runtime.RuntimeServiceMBean");

        InitialContext ctx = new InitialContext();
        MBeanServer mBeanServer = (MBeanServer) ctx.lookup("java:comp/env/jmx/runtime");

        ObjectName rt = (ObjectName) mBeanServer.getAttribute(service, "ServerRuntime");
        listenAddress = (String) mBeanServer.getAttribute(rt, "ListenAddress");
        server = listenAddress.substring(0, listenAddress.indexOf("/"));
        port = (Integer)mBeanServer.getAttribute(rt, "ListenPort");         

谢谢,这很有帮助。我有一个问题:它和WLS 12c一起工作吗?