У меня есть сервер Jboss (EAP 6.4.X), работающий в режиме домена.
В файле domain.xml определен пользовательский обработчик.Класс, указанный в определении пользовательского обработчика, содержится в модуле Jboss.
Определение выглядит следующим образом:
<custom-handler name="SomeCustomHandlerName" class="com.abc.def.SomeCustomHandler" module="com.abc.def">
<level name="ALL"/>
<properties>
...
<property name="somePropertyKey" value="${some.property.value}"/>
...
</properties>
</custom-handler>
При запуске Jboss я получаю эту ошибку:
2018-12-04 18:33:30,564 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) JBAS014612: Operation ("add") failed - address: ([
("subsystem" => "logging"),
("custom-handler" => "SomeCustomHandlerName")
]) - failure description: "JBAS014802: Cannot resolve expression '${some.property.value}'"
Как я вижу, Jboss пытается разрешить выражение ${some.property.value}
, используя системные свойства.Однако это значение должно быть разрешено внутри класса com.abc.def.SomeCustomHandler
.
Вопрос состоит в том, как сказать Jboss не интерпретировать это значение и передать его как необработанное значение свойства классу SomeCustomHandler
?Может быть, есть простой способ сбежать ${}
как \$\{\}
или что-то подобное?