2

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

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

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

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

问候,

查理·Ch。

4

2 回答 2

2

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

有关详细信息,请参阅Oracle GlassFish Server 3.0.1 域文件格式参考

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

于 2012-05-24T11:22:35.570 回答
0

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

我正在使用官方文档的摘录:

变量引用可以这样使用:

<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

框架描述符:

  • 持久性.xml
  • 面孔-config.xml

在注释中:

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

其他

  • 在应用程序内部的 JNDI 查找中
  • 在启动前和启动后命令文件中。[自 Payara 服务器 4.1.2.174 起]
  • 在 JVM 选项中。[自 Payara 服务器 4.1.2.182 和 5.182 起]
  • 在 payara-expression-config.properties 文件中 [自 Payara Server 5.20.0]。
于 2021-04-02T15:20:50.987 回答