【问题标题】:Using jpda to connect to weblogic使用jpda连接weblogic
【发布时间】:2012-12-13 05:25:49
【问题描述】:

我正在构建一个实用程序/工具来分析/跟踪部署在 Weblogic 10 (java 6) 中的 Java EE 应用程序中的方法调用。目的是快速了解我们庞大的企业应用程序中的事件流。 (遍历代码很繁琐)

我已经按照与 jdk6 捆绑的“Trace”演示应用程序来构建我的版本。该应用程序在连接到普通桌面样式应用程序并成功跟踪方法调用时工作正常。但是对于 Weblogic,EventQueue.remove 返回 null EventSet。请注意,与 weblogic VM 的连接是成功的。但是一旦连接,部署的 Web 应用程序中的任何点击或活动都会导致目标 VM 中的线程挂起,最终 http 请求超时。

我正在为 weblogic 启动脚本使用以下 vm 参数:

-Xdebug -Xnoagent -Djava.compiler=NONE \
-Xrunjdwp:transport=dt_socket,server=y,address=9002,suspend=n

使用的示例代码来自 jdk1.6.0_13\demo\jpda\examples\com\sun\tools\example\trace

有没有人使用过类似的工具或遇到过类似的问题。不知Eclipse远程调试是如何实现的!

谢谢!

【问题讨论】:

    标签: java jvmti jpda jdi


    【解决方案1】:

    您可以通过在 JDWP 层登录来查看问题所在。 为您的操作系统使用 TCP 数据包嗅探器。 您可能必须在另一台机器上运行调试器才能捕获流量。 只需使用 JDWP 规范即可轻松解码数据包。 如果仅仅分析没有帮助,您可以将您的 JDWP 流量与来自 Eclipse 或您的工作场景的流量进行比较。 我已经看到 Eclipse 调试器在使用未加载的类事件淹没连接时出现挂起。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多