【问题标题】:Debug WebLogic app on Managed Server on Eclipse在 Eclipse 上的托管服务器上调试 WebLogic 应用程序
【发布时间】:2014-02-02 12:29:00
【问题描述】:

我正在尝试使用 Eclipse 调试当前在 WebLogic 上运行的 J2EE Web 应用程序。

我的配置如下:

  1. localhost:7001 上的 AdminServer 用于 WebLogic 管理控制台
  2. MyAppServer 位于 localhost:8001,我已在其中部署了我的 Web 应用程序。

现在我想在 Eclipse 上调试应用程序(我正在使用 Oracle WebLogic Pack for Eclipse)。

我在网上找到了很多参考资料,但似乎都没有。可能是因为我的应用在托管服务器上...

例如,我已将 weblogic 服务器设置为调试运行:在控制台上显示“正在侦听地址:8453 的传输 dt_socket”。 如果我尝试 Eclise -> 右键单击​​我的应用程序 -> 调试 -> 端口 8453 上的远程 Java 应用程序,它会显示“无法连接到 VM”。

有什么提示吗?

我没有希望,谢谢!

【问题讨论】:

标签: eclipse jakarta-ee weblogic


【解决方案1】:

采取以下步骤:

  1. 在用于启动托管服务器的“startManagedWeblogic.sh”中,在调用“startWebLogic.sh”之前,添加一行“debugFlag=true”
  2. 启动服务器,从 Web 控制台启用隧道(域 > YOUR_SERVER > 协议 > 常规 > 选中“启用隧道”复选框并保存),然后重新启动服务器。

正如您所指出的,默认调试端口是 8453。 在 Windows 环境下,将“.sh”替换为“.cmd”

【讨论】:

  • 此解决方案有效,但不是最理想的,因为您必须破解文件,并且一次只能调试一个托管服务器。当然,这不是每个 Oracle 的预期方式。
  • 您可以通过在每台服务器中使用不同的调试端口来调试任意数量的托管服务器。至于这是否是 Oracle 的预期解决方案,我想说您对 Oracle 以及他们在 bea 的 weblogic 上所做的集成工作的质量过于信任。但是,这并不意味着没有其他解决方案。无论如何,请与我们分享。
  • 我还想问一下,为什么要一次调试多个服务器。我的意思是在生产中你没有启用调试。在开发过程中,您一次只能处理 1 个问题。
  • 您可能不是唯一在远程开发集群中工作的开发人员!当然,其他开发人员调试部署在同一托管服务器上的应用程序将无法连接到同一端口,如果端口明显相同,那将无法正常工作。 +1 关于太多的信仰,但我相信你在这一点上是对的。我没有更好的建议。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-04-30
  • 2016-11-25
  • 1970-01-01
  • 2016-11-17
  • 1970-01-01
  • 2018-06-27
  • 2012-09-29
相关资源
最近更新 更多