NetBeans - "sun-resources.xml"与"glassfish-resources.xml"

Ebe*_*zer 6 deployment netbeans java-ee glassfish-4

您是否知道Netbeans如何决定将哪个文件名用于应用程序范围的资源:sun-resources.xmlglassfish-resources.xml?此名称是可配置还是硬编码?

据我所知,GlassFish支持sun-resources.xml以实现向后兼容.但根据"应用程序部署指南",首选文件名是glassfish-resources.xml.

我使用GlassFish 4.1运行相对较新版本的Netbeans - 8.0.2,但我生成了sun-resources.xml文件.这看起来很奇怪而令人困惑.

另一方面,我看到人们在使用glassfish-resources.xml时遇到麻烦:https: //netbeans.org/bugzilla/show_bug.cgi?id = 243034.建议的解决方案是将glassfish-resources.xml重命名为sun-resources.xml - 这也与GlassFish建议相矛盾.

最好的祝福

kol*_*sus 3

首先,让我们设定期望,在 Netbeans 源中,Glassfish 应该能够使用这两个文件。服务器配置一般封装在CommonServerSupport类中。

而且,它是不可配置的。

然而,从我在 Netbeans 源代码中看到的情况来看,该glassfish-resource.xml文件永远不会被使用。原因如下:

  1. glassfish-resource.xml根据我从该方法中推断出的信息,默认设置应该是deployResources()。该方法又取决于registerResourceDirs()

  2. succeeded当从未更新为true指示glassfish-resource.xml已成功创建并且应该使用时,问题就开始了。

  3. 最终发生的事情是deployResources()尝试使用sun-resources.xml无论如何作为后备:

    if (!usedNewName) {
       // try to use sun-resources.xml
       registerResourceDir(resourceDir,dm,"sun-resources"); // NOI18N
     }
    
    Run Code Online (Sandbox Code Playgroud)

值得一提的是,这个 bug 是在 NB 8.0 中引入的;7.3似乎没有同样的问题