System.getProperties为某些值返回null

时间:2013-12-08 21:50:27

标签: java amazon-web-services system-properties

我在我的tomcat servlet上遇到了一些问题,这些问题由amazon aws在elasticbeanstalk上托管。

为了保护敏感数据,我将其保存在web.xml文件中,以便可以从System.getProperties()引用它。

部分数据在代码中通过System.getProperties()调用时返回null - 而通过System.getProperties()调用的其他数据也会返回正确的值。

我的web.xml文件如下:

    <env-entry>
    <env-entry-name>RDS_PASSWORD</env-entry-name>
    <env-entry-type>java.lang.String</env-entry-type>
    <env-entry-value>blah</env-entry-value>
</env-entry>
<env-entry>
    <env-entry-name>RDS_HOSTNAME</env-entry-name>
    <env-entry-type>java.lang.String</env-entry-type>
    <env-entry-value>blah</env-entry-value>
</env-entry>
<env-entry>
    <env-entry-name>DUMBDATA</env-entry-name>
    <env-entry-type>java.lang.String</env-entry-type>
    <env-entry-value>blah</env-entry-value>
</env-entry>

我的代码如下:

        w.println(System.getProperty("DUMBDATA"));
    w.println(System.getProperty("RDS_HOSTNAME"));

虽然我尝试从相同的方法访问数据并且它们以相同的方式设置,但RDS_HOSTNAME返回其正确的值,而DUMBDATA返回null。

我很欣赏对此问题的任何见解,

感谢。

1 个答案:

答案 0 :(得分:2)

尝试类似

的内容
Properties p = System.getProperties();
Enumeration keys = p.keys();
while (keys.hasMoreElements()) {
  String key = (String)keys.nextElement();
  String value = (String)p.get(key);
  w.println(key + ": " + value);
}

找出支持哪些。