java - System.getProperties 对于某些值返回 null

标签 java amazon-web-services system-properties

我的 tomcat servlet 遇到一些问题,该 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。

非常感谢您对这个问题的任何见解,

谢谢。

最佳答案

尝试类似的事情

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);
}

找出支持哪些。

关于java - System.getProperties 对于某些值返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20459582/

相关文章:

amazon-web-services - AWS ECS 跨多个实例处理 DNS 子域

Java 预处理器检查操作系统

java - 访问 SMS 消息类型常量

java - 无法将 Drools 6.x Workbench 部署到 Windows 中的 tomcat - 没有使用 uniqueName 'jdbc/jbpm' 注册的资源

java - InputStreamReader 与 FileReader

python - Boto s3 获取元数据

amazon-web-services - 未找到名为 Assume-role-with-web-identity 的凭据

java - Wildfly 8.2/Undertow - 属性占位符似乎不适用于主机配置中的别名属性

java - 让tomcat溢出系统属性

java - 创建了计划 cron 作业主类作为可运行的 jar