Выпущена версия Jmix 3.0

от автора

Выпущен Jmix 3.0, и это самый значительный шаг, который фреймворк сделал за последние годы. Этот релиз перестраивает основу на современном технологическом стеке, оставаясь полностью совместимым с предыдущими версиями, что делает миграцию гладкой и простой. Наряду с обновлением платформы, 3.0 представляет набор функций, которые активно используют ИИ и предоставляют гибкость в рантайм.

Ниже приведён краткий обзор основных новых возможностей. Полный список изменений, включая все критические изменения, доступен в разделе Что нового документации.

Новый технологический стек

Главная новость Jmix 3.0 — сама платформа. Основные зависимости обновлены: Spring Boot 4.0, Vaadin 25.1, EclipseLink 5.0 и Flowable 8.0. Теперь фреймворк требует Java 21 или 25, а также Studio 3.0 с IntelliJ IDEA 2025.3 или новее. Это серьёзный скачок, который приводит Jmix в соответствие с текущей экосистемой Java и обеспечивает дальнейшее обслуживание и актуальную безопасность.

Новые возможности и улучшения

  • Дополнение «Динамическая модель»Новое дополнение Dynamic Model позволяет расширять модель данных работающего приложения без изменения исходного кода или перезапуска. Вы можете добавлять атрибуты к существующим сущностям и определять совершенно новые сущности с собственными таблицами в БД, а также экраны, валидацию и безопасность на основе ролей. Всё это через графический административный интерфейс.

  • Дополнение «Инструменты ИИ»Это новое дополнение добавляет в приложения Jmix ассистента на базе LLM. Оно поставляется с готовым к использованию чат-интерфейсом, программным API, предопределёнными инструментами для доступа к данным на естественном языке и точками расширения для добавления собственных инструментов.

  • Предпросмотр шаблонов сообщенийДополнение Message Templates теперь позволяет пользователям проверять шаблоны в интерфейсе перед использованием. Новое действие Preview проверяет рендеринг на основе фактических значений параметров и выявляет проблемы FreeMarker или отсутствующих параметров на раннем этапе.

  • Тема AuraОбновление до Vaadin 25 добавляет в Jmix новую тему Aura. Привычная тема Lumo остаётся доступной, и вы можете выбрать, какую использовать при создании проекта в Studio.

  • Компонент MarkdownEditorНовый компонент markdownEditor позволяет пользователям писать и просматривать Markdown в одном поле с панелью форматирования, переключением режимов Редактирование/Просмотр, сочетаниями клавиш и стандартными возможностями полей Jmix UI, такими как привязка данных и валидация.

  • Рендереры деталей для DataGridКомпоненты dataGrid и treeDataGrid теперь имеют два предопределённых XML-рендерера — detailLinkRenderer и detailButtonRenderer — для открытия экранов деталей сущности прямо из колонки. Это делает добавление действий Открыть или Редактировать тривиальным, без необходимости в кастомном рендерере.

  • Настройка сортировкиJmix теперь предлагает выделенные точки расширения для сортировки: как общие для приложения через Spring-бины, так и для каждой таблицы через компараторы колонок и делегаты билдера сортировки. Правила остаются независимыми и переиспользуемыми, поэтому приложения и дополнения могут вносить свои собственные, не конфликтуя и не изменяя стандартные настройки фреймворка.

  • Builder API для GenericFilterНовый fluent билдер-API предоставляет лаконичный способ настройки genericFilter в Java, создавая компоненты propertyFilterjpqlFilter и groupFilter и собирая конфигурации времени выполнения. Он обрабатывает связывание, которое ранее приходилось явно писать через низкоуровневый API.

  • Смена пароля при следующем входеТеперь вы можете требовать от пользователя смены пароля при следующем входе — как при создании нового пользователя, так и при назначении временного пароля через стандартное действие Сброс пароля.

  • Шаблоны экранов времени выполненияТеперь вы можете генерировать стандартные экраны списка и деталей из шаблонов, объявленных в метаданных сущности с помощью @ListViewTemplate и @DetailViewTemplate, вместо того чтобы создавать их вручную на этапе разработки. Фреймворк генерирует экраны и пункты меню при старте, и вы можете задать собственные шаблоны FreeMarker для полного контроля.

  • Улучшения в StudioStudio добавляет ряд удобств: унаследованные атрибуты в конструкторе сущностей, генерация пользовательских сервисов обновления и их использование в экранах, признак Has Tenant ID для мультитенантных проектов, определения индексов Search и задания Quartz в окне инструментов Jmix, основные действия Jmix в контекстном меню Project, а также поддержка чтения и обновления скриптов сборки на Kotlin DSL.

  • Набор инструментов для ИИ-агентов в StudioStudio теперь может автоматически устанавливать навыки агентов (skills), инструкции и MCP-серверы из репозитория Jmix AI Agent Guidelines в ваш проект. Поддерживаются Claude Code CLI, Codex, OpenCode и Junie.

Планы на будущее

Следующий функциональный релиз запланирован на октябрь 2026 года. Мы работаем над следующим:

  • Готовое к эксплуатации дополнение Dynamic Model с конструктором модели и UI на базе ИИ

  • Визуальный компонент AI Chat

  • Конструктор отчётов на базе ИИ

  • Потоковые XLSX-отчёты для очень больших объёмов данных

  • Улучшенная интеграция между дополнениями BPM и Notifications

  • Возможности Studio: мастер для пользовательских компонентов, действие копирования экрана и фильтры свойств в шаблонах экранов

Наша текущая дорожная карта доступна на GitHub.

Заключение

Jmix 3.0 модернизирует стек, сохраняя управляемый путь обновления, и задаёт направление для будущих релизов своей первой волной функций ИИ и возможностей конфигурации в рантайм. Мы рекомендуем вам обновиться, попробовать миграцию на реальном проекте и посмотреть, как новые возможности впишутся в вашу работу. Как всегда, вопросы и отзывы приветствуются на форуме.

ссылка на оригинал статьи https://habr.com/ru/articles/1061776/