我正在尝试使用以下 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
想知道为什么不同的应用程序服务器的行为会有所不同。