我正在构建一个实用程序/工具来分析/跟踪部署在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远程调试!
谢谢!
答案 0 :(得分:0)
您可以通过登录JDWP层来查看问题所在。 为您的操作系统使用TCP数据包嗅探器。 您可能必须在另一台计算机上运行调试器才能捕获流量。 只需使用JDWP规范就可以轻松解码数据包。 如果只是分析没有帮助,您可以将JDWP流量与Eclipse或工作方案中的流量进行比较。 我已经看到Eclipse调试器在使用卸载的类事件充满连接时显示为挂起。