我正在使用Eclipse在运行JBoss的远程服务器上调试应用程序。我的特殊问题是JSP中的NullPointerException
。 JSP在scriptlet中有太多的Java代码,但不幸的是,重构不是一个选择。找到引发NullPointerException
的线路一直非常具有挑战性,而且我遇到了困难。
如何远程调试此JSP以查找抛出NullPointerException
的划线的行?
我最后通过注释掉JSP的行来找到问题,直到我解决了这个问题。乏味但是,它有效。
答案 0 :(得分:2)
您可以通过添加类似
的内容在某些应用程序服务器上启用远程调试-Xdebug -Xrunjdwp:transport=dt_socket,address=5001,server=y,suspend=n
到命令行。然后,在IDE中,连接到端口5001以进行远程调试。 This page有各种应用程序服务器的示例。
我发现如果你有编译JSP的java源代码,调试JSP有时可以很容易地完成。检查应用程序服务器的JSP编译手册或预编译JSP并保存.java文件;然后使用这些文件作为调试器的源。
答案 1 :(得分:1)
通常,您将能够在服务器日志中找到错误。由于您是在远程服务器上运行它,请转到该计算机并检查日志。它应该指出错误。
如果我运行本地版本的站点,我发现调试更容易,因为我可以实时监视eclipse中的服务器日志。也许值得设置一个可以开发的本地副本,然后在完全调试代码后部署到远程服务器。
希望这有帮助。