如何使用OS环境变量配置glassfish domain.xml?

时间:2012-05-24 09:50:59

标签: tags glassfish environment-variables glassfish-3

我想将环境变量传递给glassfish domain.xml,如下所示: -

<jvm-options>-DMY_FILE=file:///${MY_HOME}/a.txt</jvm-options>

${MY_HOME}是一个环境变量。

我不确定这是否可行。你能帮忙进一步提出建议吗?非常感谢您的帮助。我很期待很快收到你的来信。

此致

Charlee Ch。

2 个答案:

答案 0 :(得分:2)

您只能使用Java系统属性(-D)来定义domain.xml之外的变量。

有关详细信息,请参阅Oracle GlassFish Server 3.0.1 Domain File Format Reference

如果您需要更好地更改设置,可以编写一个小的包装脚本,调用asadmin来更改配置的特定部分,然后启动/重新启动GlassFish。

答案 1 :(得分:0)

如果您正在运行 Payara (> 4.1.2.172) 服务器,现在可以使用环境变量。

我使用的是官方 documentation 的摘录:

变量引用可以这样使用:

<domain log-root="${com.sun.aas.instanceRoot}/${ENV=STAGE_NAME}/logs">

变量引用可以用在这些地方:

域配置

  • domain.xml(属性值内部或包含 一个配置值)
  • logging.properties(在属性值内)

包描述符:

  • web.xml / glassfish-web.xml
  • ejb-jar.xml / glassfish-ejb-jar.xml
  • application.xml / glassfish-application.xml
  • glassfish-resources.xml

框架描述符:

  • persistence.xml
  • faces-config.xml

在注释中:

  • @EJB
  • @WebService
  • @Stateless
  • @Stateful
  • @Singleton
  • @ActivationConfigProperty
  • @DataSource
  • @WebServlet

其他

  • 在应用程序内的 JNDI 查找中
  • 在引导前和引导后命令文件中。 [自Payara Server 4.1.2.174]
  • 在 JVM 选项中。 [自 Payara Server 4.1.2.182 和 5.182]
  • 在 payara-expression-config.properties 文件中 [自 Payara Server 5.20.0]。