4.2.9.1. Хранение свойств в файлах
Свойства, определяющие конфигурацию и параметры развертывания, задаются в специальных файлах свойств, имеющих имя вида *app.properties
. Каждый блок приложения имеет набор таких файлов, включающий в себя также файлы из компонента cuba платформы. Набор файлов свойств определяется следующим образом:
-
Для блоков, являющихся веб-приложениями (Middleware, Web Client, Web Portal) набор файлов свойств задается в
web.xml
в параметреappPropertiesConfig
. -
Для блока Desktop Client основной способ задания набора файлов свойств − переопределение в приложении метода
getDefaultAppPropertiesConfig()
в классе-наследникеcom.haulmont.cuba.desktop.App
.
Например, набор файлов свойств блока Middleware задается в файле web/WEB-INF/web.xml
модуля core, и выглядит следующим образом:
<context-param>
<param-name>appPropertiesConfig</param-name>
<param-value>
classpath:cuba-app.properties
classpath:com/company/sample/app.properties
file:${catalina.home}/conf/app-core/local.app.properties
</param-value>
</context-param>
Здесь префикс classpath:
означает, что данный файл нужно искать в Java classpath, префикс file:
− в файловой системе. Возможно использование системных свойств Java, в данном случае это catalina.home
− путь к каталогу установки Tomcat.
Порядок перечисления файлов важен, так как значения, указанные в каждом последующем файле заменяют значения одноименных свойств, заданные в предыдущих файлах. Этим достигается переопределение свойств платформы в конкретном приложении.
Последний файл в приведенном наборе − local.app.properties
. Он может использоваться для переопределения свойств приложения при развертывании. Если этого файла нет, он игнорируется. Если же во время инсталляции системы требуется переопределение некоторых параметров (как правило, различных URL), достаточно создать этот файл и поместить в него переопределяемые свойства. При последующих обновлениях системы такой файл с локальными настройками легко сохранить. В разделе Использование Tomcat при эксплуатации приложения приведен пример использования файла local.app.properties
.
Аналогом local.app.properties
для Desktop Client служат аргументы командной строки запуска JVM. Загрузчик свойств данного блока воспринимает все аргументы, содержащие знак "=", как пары ключ-значение, и заменяет ими соответствующие свойства приложения, заданные в файлах app.properties
.
Tip
|
Правила задания информации в файлах
|