在调试Web应用程序时,对NetBeans调试器的行为感到困惑

时间:2013-11-12 21:23:15

标签: java debugging tomcat netbeans

我正在使用NetBeans中的java ee Web应用程序。我试图调试应用程序的行为,但我看到的行为令人困惑。

我在Tomcat中通过NetBeans运行应用程序。在NetBeans中,我选择" Debug"从项目树的根目录开始,我可以向我写的应用程序发送一个请求。断点被击中,我从应用程序中获得了独特的结果。

但是,每次我尝试向我的应用程序发送请求时,都会得到完全相同的错误结果(即使我清除了Chrome上的缓存),Netbeans IDE也没有停在任何定义的断点。这是预期的吗?一旦Servlet在调试器中运行一次,它是否会在内存中被破坏?每次要调试应用程序时,是否需要停止并重新启动/重新附加NetBeans调试器?使用调试器时我有什么问题吗?这是否表明我在Servlet中编写的代码存在问题?

谢谢,

Jason Mazzotta

1 个答案:

答案 0 :(得分:1)

rjsang对缓存的观点可能有效,值得研究。 然而,也可能是某些东西比你预期的更早破裂,导致你甚至从未到达断裂线。

我建议:

  1. 使用调试日志语句(使用Log4J和SLF4j等良好的日志记录框架)大量使用调试日志语句(
  2. 在问题上抛出更多断点 - 从您希望从请求中获得的第一行开始。如果可能的话,甚至更高/更早。
  3. Tomcat log(catalina.out)的尾巴 - 你可能会发现那里发生了灾难性事件。
  4. 祝你好运。