【问题标题】:How to get bound server address and port programmatically in Java EE for JBoss 6.1 EAP?如何在 Java EE 中为 JBoss 6.1 EAP 以编程方式获取绑定的服务器地址和端口?
【发布时间】:2016-12-08 11:20:18
【问题描述】:

我正在使用以下代码来获取 JBoss 6.1 EAP 的 http 端口值。 此代码在 JBoss 7.1 AS 中运行良好。

以下是代码:

MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
ObjectName socketBindingMBean = new ObjectName("jboss.as:socket-binding-group=standard-sockets,socket-binding=http");
Integer port = (Integer) mBeanServer.getAttribute(socketBindingMBean, "boundPort"));

如果我在服务器启动后部署 WAR,此代码可以正常工作,但在启动期间无法正常工作。 JBoss 加载其模块的方式是否有变化?如何在启动时获取此信息?

【问题讨论】:

  • 我也了解到以前也有类似的问题。有人可以帮我解决它是如何解决的吗?

标签: java jakarta-ee jboss mbeans


【解决方案1】:

这是正常的,sockets和ports还没有初始化,服务器运行成功后会正常读取, 我建议使用 JBoss 的配置文件并为您的应用程序始终保持一个 prt 固定,那么您将永远知道它......

【讨论】:

  • 感谢您的回复。我的要求是在启动时填写这些详细信息。起初,我们也是这样做的,但我们想完全消除这个文件。有什么方法可以延迟部署,直到服务器初始化这些值?
  • 这是一个有效的问题。没有必要投反对票。
  • 已提出类似问题 [link]stackoverflow.com/questions/24741004/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-23
  • 2013-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多