无法从Netbeans调试Java Web应用程序

时间:2012-12-28 17:02:22

标签: java debugging java-ee netbeans jboss

我有一个Java EE 5应用程序,它包含三个Web项目。我正在使用JBoss 5.1 Web服务器和NetBeans 7.2 IDE。

我有以下问题:

  1. 我无法在调试模式下启动应用程序。据我所知,NetBeans和Java中有两种(最好的)方法:通过共享内存进行远程调试和调试。我阅读了这篇文章How to debug JBOSS application in netbeans?并在Jboss配置中设置了调试参数(我也知道共享内存和远程调试有不同的参数集),但是当我去附加调试器时出现以下错误:

    • 如果我使用远程调试,我收到错误“Connection refused”;

    • 如果我使用共享内存,我收到的错误类似于此文本“dt_shmem:找不到文件路径”。

  2. 当我通过运行run.bat文件启动JBoss时会发生这些错误。如果我从Netbeans IDE启动JBoss,我可以附加到远程进程(仍然有共享内存方法的问题),但是我有其他问题,关于页面生命周期中的变量原语和模型绑定(我现在不会写这个) 。

    如何解决这些问题以便我可以调试应用程序?至少,如何在失败时找到更好的错误消息。通过查找“连接拒绝”错误,我在网上找不到太多。

    1. 为什么我不能只按下运行主项目(或web项目)并且netbeans启动应用程序,在新的浏览器选项卡中打开它(作为localhost)并启动调试模式?我来自.net背景,VS提供这个开箱即用的工具(称为ASP .NET开发服务器)。为什么我必须使用外部Web服务器并在每次更改时部署新应用程序然后附加到它?为什么Netbeans默认情况下不能使用JVM来运行应用程序,以后我部署应用程序时会选择使用哪个Web服务器!?
    2. 我希望有人能告诉我这一点:)

      由于

      于2013年1月3日增加了注释。

      好吧,当我更改了web项目的project.properties文件中的VM选项时(添加了run.args.extra = -J-Xms256m -J-Xmx756m),我在执行代码时成功调试了应用程序和热断点。但是,我仍然有Managed Bean属性的奇怪问题。我在页面上有选择列表,它连接到布尔属性。如果没有选择任何内容,则默认情况下应将其设置为空值(当我通过运行run.bat文件启动JBoss服务器时),但默认情况下其值设置为false!我在firebug中检查了参数post值,并且将参数发布到bean没有问题。在我看来,问题是当JSF框架试图将post值映射到Managed Beans属性时,但我无法找出为什么会发生这种情况。我还检查了faces-config.xml,但没有找到任何特定的规则来映射到这个特定的属性。有什么提示吗?

0 个答案:

没有答案