Выпущен Jmix 3.1. В нём представлены два новых дополнения и несколько UI-компонентов, которые раньше приходилось создавать вручную. Кроме того, дополнение Dynamic Model выходит из экспериментального статуса, а новый инструмент командной строки позволяет создавать проекты без IDE. Spring Boot обновлён до версии 4.1, а Vaadin — до 25.3.
Ниже приведён краткий обзор основных новых возможностей. Полный список изменений, включая все критические изменения, доступен в разделе Что нового документации.
Новые возможности и улучшения
-
Jmix CLI Jmix CLI — новый инструмент командной строки, который создает Jmix-проекты без IDE: в терминале, в скрипте или с помощью ИИ-агента. Он использует те же шаблоны проектов, что и Studio, и добавляет Jmix Agent Toolkit в новый проект.
-
Дополнение AI Chat Новое дополнение AI Chat предоставляет UI-компоненты для создания чат-интерфейсов: готовый
aiChatс потоковыми ответами, сообщениями в Markdown и вложенными файлами, а такжеaiMessageListиaiMessageInputдля построения собственного макета. Ответы формируетLLMProvider, который реализует приложение, поэтому компоненты работают со Spring AI, SDK поставщика или вашим собственным сервисом. -
Дополнение UI Recovery Новое дополнение UI Recovery сохраняет несохраненные изменения в экранах в виде черновиков, пока пользователь работает. Если сервер перезапустился, сессия истекла или браузер был закрыт, пользователь сможет восстановить черновик при повторном открытии экрана.
-
Dynamic Model готов к промышленному использованию Дополнение Dynamic Model больше не является экспериментальным. В нем появились UI-обработчики для задания поведения экранов, полнотекстовый поиск по динамическим атрибутам, поддержка кластера, история модели и роль, разрешающая только изменения без потери сохраненных данных.
-
Экраны просмотра Новые экраны просмотра (read views) показывают экземпляр сущности без возможности редактирования. Их можно создать в мастере экранов Studio или сгенерировать во время выполнения с помощью
@ReadViewTemplate, а действиеlist_readоткрывает их автоматически. -
Потоковые отчеты и отчеты с ИИ Бэнды отчетов теперь могут быть потоковыми. Потоковый бэнд читает строки из курсора базы данных и записывает их в XLSX по одной, не загружая все данные в память, что позволяет формировать отчеты практически неограниченного размера. Новый тип набора данных AI-generated JPQL позволяет описать данные бэнда на естественном языке и сохраняет сгенерированный запрос в определении отчета.
-
Компонент и рендерер Popover Новый компонент popover — это всплывающая панель, которая открывается рядом с целевым компонентом по щелчку, наведению или фокусу и может содержать любые компоненты. Соответствующий
popoverRendererдляdataGridпоказывает длинный текст ячейки целиком по щелчку. -
Компоненты Slider, Badge и SVG Новые компоненты integerSlider и decimalSlider позволяют выбрать значение, а их варианты для диапазонов — диапазон значений. Компонент badge отображает статус, счетчик или метку и может быть привязан к атрибуту сущности, а компонент svg выводит SVG-разметку прямо в экране.
-
Изменяемый размер боковой панели Пользователи теперь могут менять размер
sidePanelLayout, перетаскивая ее внутренний край, а фасетsettingsзапоминает выбранный размер. -
Аннотация Lookup Field Новая аннотация @LookupField определяет, как выбирается ссылка во всем фреймворке: выпадающим списком
entityComboBoxили черезentityPickerс экраном выбора. Она применяется в фильтрах, редактируемых ячейках таблиц и runtime-шаблонах экранов и может подгружать элементы выпадающего списка постранично по мере ввода. -
Улучшения в BPMN-modeler BPMN-modeler теперь поддерживает escalation-события, уровень истории для отдельного процесса и атрибуты асинхронного выполнения для большинства элементов.
-
Упрощенная настройка OAuth2 для Email В дополнении Email Sending появился новый экран Email connection, который подключает почтовый ящик Google или Microsoft, сохраняет refresh-токен и проверяет соединение.
-
Улучшения Studio В мастере создания экранов появился новый шаг для выбора способа фильтрации данных. В дизайнере сущностей добавлено действие Views with Attribute, а новые действия позволяют копировать экран и генерировать файлы кастомного UI-компонента.
Планы на будущее
Следующий релиз с новыми возможностями запланирован на февраль 2027 года. Мы работаем над следующим:
-
Консоль администрирования для дополнения Search
-
Аудит действий пользователей
-
Локализованные текстовые атрибуты сущностей
-
Компонент Stepper (мастер)
-
Безопасность: доступ к атрибутам в зависимости от состояния и улучшенный UI для runtime-ролей
-
ИИ-конструктор для Dynamic Model и транслятор динамической модели в статическую
-
Возможности Studio: улучшение UX дизайнера сущностей и шаблон экрана для диалога ввода
Актуальная дорожная карта доступна на GitHub.
Заключение
Надеемся, вам понравится работать с Jmix 3.1! Мы рекомендуем попробовать новые возможности на реальном проекте и посмотреть, как они впишутся в вашу работу. Как всегда, вопросы и отзывы приветствуются на форуме.
ссылка на оригинал статьи https://habr.com/ru/articles/1100552/