首页 > 解决方案 > 如何在 jboss 的standalone.xml 中的属性名称中使用环境变量?

问题描述

我知道在字段中,我可以使用 ${env.VARIABLE_NAME} 的语法提取环境变量,但是,每当我尝试在属性名称中这样做时,jboss 都会引发错误。

我所做的和工作

                <datasource jndi-name="java:/jdbc/database" pool-name="database" enabled="true" use-java-context="true">
                    <connection-url>${env.DS_CONNECTION_URL}</connection-url>
                    <driver>${env.DS_DRIVER}</driver>
                </datasource>

我想做的事,失败了

            <console-handler name="CONSOLE">
                <formatter>
                    <named-formatter name="${env.FORMATTER}"/>
                </formatter>
            </console-handler>

我也尝试在没有周围引号的情况下开始。我创建了一个值为 name 和环境变量的子 xml 元素,但这也失败了。

我希望将环境变量 FORMATTER 用作名称,但在尝试启动 jboss 时出现以下错误。

java.lang.IllegalArgumentException: Formatter "${env.FORMATTER}" is not found

标签: dockerconfigurationjbossjboss7.x

解决方案


named-formatter属性不允许使用表达式。在大多数情况下,它没有多大意义,因为必须定义格式化程序并且不能具有动态名称。

如果您查看模型描述文档,您可以看到哪些属性支持表达式。


推荐阅读