我正在使用一个类来在源文件夹下获取属性文件。但这不起作用!经过检查,我发现通过使用默认路径
File f = new File("/src/ss.properties");
不是Web应用程序路径,而是glassfish配置路径!如果要获取存储在“类”路径中的属性文件,该怎么办?您知道,通常默认路径是项目路径。
我用过ClassLoader.getResourceAsStream("sss")
。但是它返回null!我确定文件名正确,因为我已经在另一个简单的Java应用程序中尝试过了。
更新 :使用
this.getClass().getClassLoader().getResourceAsStream("sectionMapping.properties");
代替
ClassLoader.getSystemResource("sectionMapping.properties")
做到了!我想知道为什么?
您应该使用getResourceAsStream
或类似的名称。有关如何访问资源的信息,请参见这篇文章。(这独立于Glassfish-
适用于所有Java EE应用服务器。)
另请参阅此JavaWorld文章。
更新: 如果文件位于该位置src/ss.properties
,请检查文件是否已复制到WEB- INF/classes
。然后,您应该可以使用以下代码访问它:
InputStream propStream = ClassLoader.getResourceAsStream("ss.properties");
或(如果使用中的方法,请注意斜杠java.lang.Class
)
InputStream propStream = Class.getResourceAsStream("/ss.properties");
请注意,需要使用完整的文件名(包括.properties
扩展名)。
如果以上两种方法均无效,请用替换getResourceAsStream
呼叫,getResource(...).openStream()
并张贴应引发的异常的详细信息。
我已经在Eclipse中创建了示例/默认测试Web项目。 我想知道: 包含哪些WAR文件及其目录结构?哪些是可选的和必需的文件/文件夹? 通过Ant build.xml创建和战争的任务语法 我读了所以回答答案1和答案2,但在我的项目中帮不上忙。
我们最近切换到了 Glassfish 3.1.2.2,并有几个 Web 应用程序打包为 war 文件。有时,这些应用程序所需的上下文根目录与文件名不同。 当我们使用Weblogic时,我们通过在Weblogic中声明上下文根来实现这一点。像这样的xml 我们注意到glassfish-web.xml中存在相同的标记,但是不管我们在那里定义什么,服务器总是将文件名确定为上下文根。 现在我们在 asad
这是我得到的错误: Java语言io。FileNotFoundException:C:\Users\Owner\AppData\Roaming\NetBeans\7.3.1\config\GF3\domain1\generated\jsp\uploadRamki\data\images。jpg(系统找不到指定的路径) 这是我的后盾豆:
问题内容: 我正在创建一个在GlassFish中运行的Web服务,并且我想要一些自定义属性。为此,我正在使用该类。我使用的代码是: 但是,如何在配置目录中获取-file? 我不确定我的类路径,因为它是由NetBeans和GlassFish管理的。我假设我的-file在部署时已添加到类路径中… 我已经添加了自己的解决方案,但是如果有人可以提出更好的解决方案,那将是非常受欢迎的… 问题答案: 有效的解
我正在尝试找到一种方法来显式指定部署到Glassfish的Web应用程序的上下文路径3.1.2.2但到目前为止我还没有运气。有人能对此提供指导吗?背景如下: 我有一个Web应用程序,它由两个单独的Netbean(7.0)项目组成。第一个是Web服务,称为FOWS。第二个是使用FOWS网络服务的面向用户的Web应用程序。它被称为FooApp。 我最近将glassfish升级到3.1.2.2,希望解决
4.0.0 我正在尝试使用上面定义的pom设置一个项目。在插件部分中,玻璃鱼已被表示,它正在尝试从该位置下载zip。 http://下载. Java . net/glassfish/4.1/release/glassfish-4.1 . zip 它给了我一个错误[error]Failed to execute goal org.codehaus.icargo:cargo-maven2-plugin