gpt4 book ai didi

java - Jboss 服务器未加载 Java 环境属性

转载 作者:行者123 更新时间:2023-11-28 23:29:13 27 4
gpt4 key购买 nike


我正在尝试使用以下 Java 代码在 Web 应用程序中加载属性文件。

InputStream in = ContextEventListener.class.getResourceAsStream(resourceConstVal);
Properties config = new Properties();
config.load(in);

当这个应用程序在tomcat服务器上运行时;属性文件中指定的所有属性都作为系统变量导出,并可通过以下代码访问

System.getProperty("TEMP")

`
但是,当同样的应用程序运行在Jboss服务器上时;属性必须由

显式导出
Set<Object> keySet = config.keySet();
for (Iterator iterator = keySet.iterator(); iterator.hasNext();) {
String strVal = (String) iterator.next();
System.setProperty(strVal, config.getProperty(strVal));
}


使用JDK 1.6、Tomcat 7.0、Jboss AS 6.1。

属性文件的内容
CONTENT_DIR=XXXXXX
RESPONSE_FILE_NM=YYYYYYYY
REQUEST_INT_FILE_NM=ZZZZZZZ

想知道为什么行为在不同的应用程序服务器中会有所不同。

最佳答案

那是因为 Jboss 将 .properties 文件放在类路径上的 jars 中,并且在部署后的某个时间无法编辑。这是一个解决方法 https://developer.jboss.org/wiki/HowToPutAnExternalFileInTheClasspath

关于java - Jboss 服务器未加载 Java 环境属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32847418/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com