【问题标题】:How can I get a liberty server.xml variable in java?如何在 java 中获取 liberty server.xml 变量?
【发布时间】:2016-07-07 18:38:06
【问题描述】:

我正在尝试在运行时设置server.xml 变量。

因此,我需要一个可以在 server.xml 中使用的环境变量,例如${variable} 在我的 java 代码中,例如System.getProperty.

一个简单的<variable name="test" value="4325" /> 在我的server.xml 中工作,但我无法在Java 中读取这个值。

<featureManager>
    <feature>appSecurity-2.0</feature>
</featureManager>
<library id="messageHubLoginLib">
    <fileset dir="${server.config.dir}" includes="messagehub.login-1.0.0.jar"/>
</library>

<jaasLoginModule id="KafkaClient" className="com.ibm.messagehub.login.MessageHubLoginModule" controlFlag="REQUIRED" libraryRef="messageHubLoginLib">
    <options serviceName="kafka" username="#USERNAME" password="#PASSWORD"/>
</jaasLoginModule>

<jaasLoginContextEntry id="KafkaClient" name="KafkaClient" loginModuleRef="KafkaClient"  />

我想在运行过程中更新server.xml 文件中#USERNAME#PASSWORD 的值。有什么想法吗?

【问题讨论】:

  • 是的,作为一种解决方法,我已将 server.xml 作为 XML 文档读取,操作条目并将其写回 server.xml

标签: java environment-variables websphere-liberty


【解决方案1】:

你能发布一些代码吗?这种方式我们帮不上什么忙…… 但是,我建议您使用 .xml 文件的库,如 JAXB 和 unmarshall,并在需要读取或写入 .xml 文件时对其进行编组。

【讨论】:

  • 我认为 TP 还没有任何代码,因为他正在寻求一个有效的策略来通过他的 java 应用程序在运行时修改应用程序服务器的配置文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-06
  • 2012-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-31
相关资源
最近更新 更多