Свойства приложения

Основные

jmix.core.anonymous-authentication-token-key

Ключ, используемый в Spring Security AnonymousAuthenticationProvider и AnonymousAuthenticationFilter.

Значение по умолчанию: de72c623-6d3d-458c-a187-c526de515ecd

jmix.core.available-locales

Определяет локали, используемые в приложении, в виде списка кодов локалей, разделенных запятыми. См. настройка локалей для получения дополнительной информации.

Например:

jmix.core.available-locales = en,ru

jmix.core.conf-dir

Указывает каталог для файлов конфигурации, которые можно изменять во время выполнения приложения. Используется реализацией по умолчанию интерфейса Resources для загрузки файлов ресурсов из каталога перед поиском в classpath.

Значение по умолчанию: ${user.dir}/.jmix/conf, где ${user.dir} - это рабочий каталог пользователя, то есть каталог, из которого была запущена JVM.

Этот каталог используется для hot deploy и может автоматически очищаться Jmix Studio или Gradle перед запуском приложения. Подробнее см. Hot Deploy.

jmix.core.cross-data-store-reference-loading-batch-size

Определяет размер пакета при загрузке перекрестных ссылок между хранилищами данных для коллекции сущностей.

Значение по умолчанию: 50

jmix.core.default-file-storage

Задает файловое хранилище по умолчанию, если в приложении используются несколько файловых хранилищ.

jmix.core.exclude-beans

Список имен бинов, которые следует исключить из контекста приложения Spring. Это свойство можно использовать для переопределения бинов, уже имеющих аннотации @Primary в некотором дополнении.

Например:

jmix.core.exclude-beans = abc_FooService,abc_BarService

jmix.core.fetch-plans-config

Путь к файлу конфигурации общего репозитория фетч-планов. См. дополнительную информацию в разделе создание фетч-планов.

Например:

jmix.core.fetch-plans-config = com/company/demo/fetch-plans.xml

jmix.core.hot-deploy-enabled

Включает загрузку классов из файловой системы механизмом Hot Deploy.

Если задано значение false, приложение не загружает классы из файловой системы во время выполнения.

Эта возможность также управляется глобальным переключателем jmix.core.unsafe-runtime-features-enabled: если это свойство имеет значение false, Hot Deploy отключается независимо от данного свойства.

Значение по умолчанию: true

jmix.core.temp-dir

Определяет каталог, в котором приложение может хранить временные файлы.

Используется фреймворком и дополнениями для некоторых операций, таких как экспорт/импорт и загрузка/скачивание.

Значение по умолчанию: ${user.dir}/.jmix/temp

${user.dir} - это рабочий каталог пользователя (в котором была запущена JVM).

jmix.core.trigger-files-enabled

Включает обработку файлов-триггеров вызова бинов.

Файл-триггер - это файл, размещаемый в подкаталоге triggers временного каталога приложения. Имя файла состоит из двух частей, разделенных символом #: первая часть - это имя класса бина, вторая часть - это имя метода бина для вызова. Например: io.jmix.core.Messages#clearCache. Обработчик файлов-триггеров следит за появлением в папке новых файлов-триггеров, вызывает соответствующие методы, а затем удаляет файлы.

Эта возможность также управляется глобальным переключателем jmix.core.unsafe-runtime-features-enabled: если это свойство имеет значение false, обработка файлов-триггеров отключается независимо от данного свойства.

Значение по умолчанию: true

jmix.core.trigger-files-process-interval

Период поиска и обработки файлов-триггеров в миллисекундах.

Значение по умолчанию: 5000

jmix.core.unsafe-runtime-features-enabled

Глобальный выключатель возможностей времени выполнения, которые могут исполнять произвольный код или раскрывать внутреннюю информацию и поэтому могут быть небезопасны в продакшене.

Если задано значение false, все перечисленные ниже возможности отключаются независимо от их собственных свойств, специфичных для модуля:

Каждую возможность можно также отключить по отдельности с помощью ее собственного свойства, оставив остальные включенными.

Значение по умолчанию: true

jmix.core.web-host-name

Указывает имя хоста, на котором работает приложение.

Это свойство может использоваться различными подсистемами приложения. Если свойство необходимо для подсистемы, это должно быть указано в ее документации.

Это свойство не влияет на фактический адрес сервера, на котором работает приложение. Для привязки к конкретному адресу используйте свойство Spring Boot server.address.

jmix.core.web-port

Указывает порт, на котором работает приложение.

Это свойство может использоваться различными подсистемами приложения. Если свойство необходимо для подсистемы, это должно быть указано в ее документации.

Это свойство не влияет на фактический порт сервера, на котором работает приложение. Для привязки к конкретному порту используйте свойство Spring Boot server.port.

jmix.core.work-dir

Определяет рабочий каталог, в котором приложение может хранить некоторые данные.

Используется локальным файловым хранилищем, которое по умолчанию создает структуру файлового хранилища в своем подкаталоге filestorage.

Значение по умолчанию: ${user.dir}/.jmix/work

${user.dir} - это рабочий каталог пользователя (в котором была запущена JVM).

CORS

Дополнительную информацию о CORS смотрите в разделе CORS дополнения Универсальный REST.

jmix.cors.allow-credentials

Определяет, поддерживаются ли учетные данные пользователя.

Значение по умолчанию: false

jmix.cors.allowed-headers

Список заголовков, которые могут быть указаны в pre-flight запросе и разрешены для использования во время фактического запроса. Специальное значение "*" позволяет фактическим запросам отправлять любой заголовок.

Значение по умолчанию: *

jmix.cors.allowed-methods

HTTP-методы, разрешенные для использования, например, "GET", "POST", "PUT" и т. д. Специальное значение "*" разрешает все методы.

Значение по умолчанию: *

jmix.cors.allowed-origins

Определяет список источников, для которых разрешены междоменные запросы. Используйте специальное значение * для всех источников.

Например:

jmix.cors.allowed-origins = https://www.allowed1.com, https://www.allowed2.com

Значение по умолчанию: *

Session

jmix.core.session.maximum-sessions-per-user

Максимальное количество сессий на пользователя.

Это свойство влияет на параметр SessionManagementConfigurer.maximumSessions в Spring Security.

Значение по умолчанию: 100

Проблемы длинного classpath в Windows

io.jmix.flowui.read-class-path-from-temp-jar

В операционной системе Windows приложения с большим количеством путей в classpath могут столкнуться с проблемами отрисовки пользовательского интерфейса в Flow UI.

Jmix предоставляет свойство конфигурации для решения этой специфической для Windows проблемы:

io.jmix.flowui.read-class-path-from-temp-jar = true

Значение по умолчанию: true

При включении:

  • Автоматически активируется только в операционной системе Windows.

  • Извлекает classpath из файла MANIFEST.MF внутри временного JAR-файла, созданного Gradle.

  • Гарантирует, что Spring Boot правильно идентифицирует все записи classpath.

  • Восстанавливает корректную загрузку ресурсов пользовательского интерфейса и отрисовку компонентов.