
Мы рады сообщить о выпуске Jmix 2.7! Эта версия представляет обновленный дизайнер ролей в Jmix Studio, новые UI-компоненты и включает ряд других улучшений фреймворка. Полный список изменений вы можете посмотреть в разделе "Что нового" документации Jmix.
Ниже приведен краткий обзор основных новых функций Jmix 2.7.
Визуальное управление иерархией ролей
Дизайнер ролей теперь предлагает четкую визуализацию иерархии наследования, позволяя видеть, как разрешения передаются от базовых ролей. Унаследованные разрешения отображаются как элементы только для чтения, а вкладка Entities использует интуитивную цветовую кодировку: зеленый для разрешенных и красный для неразрешенных элементов. Это упрощает процесс аудита и управления сложными конфигурациями безопасности.

Добавление атрибута из БД
Используйте новую опцию "Add attribute from DB" в дизайнере сущностей для разработки по принципу "database-first". Просто создайте столбец в таблице вашей базы данных, а затем импортируйте его непосредственно в модель данных Jmix как атрибут сущности. Больше никакой ручной синхрони��ации — Studio берет скучные задачи на себя.

Компонент GroupDataGrid
Новый компонент groupDataGrid помогает эффективнее отображать данные. Эта таблица данных позволяет группировать строки по одному или нескольким колонкам, что идеально подходит для суммирования и анализа наборов данных. Установите дополнение Grouping Data Grid и изучите документацию для быстрой интеграции.

Компонент Card
Используйте новый компонент-контейнер card для представления связанного контента и действий в аккуратном, модульном формате. Настраивайте его макет и стиль в соответствии с вашими дизайнерскими потребностями, будь то дашборды или экраны деталей.

Размещайте компоненты, карточки или фрагменты в адаптивной двумерной сетке с помощью gridLayout. Основанный на CSS Grid Layout, он предоставляет привлекательную альтернативу традиционным таблицам данных для сложных, структурированных пользовательских интерфейсов, которые плавно адаптируются к разным размерам экранов. Кроме того, вы можете подключить gridLayout к контейнеру данных CollectionContainer для отображения динамических наборов данных.

Компонент UserMenu
Улучшите взаимодействие с пользователем с помощью компонента userMenu, который теперь по умолчанию включен в новые шаблоны проектов. Он отображает имя вошедшего в систему пользователя вместе с основными действиями, такими как "Заместить пользователя" и "Выйти", в удобном выпадающем списке. Добавляйте собственные действия, вложенные пункты или даже другие UI-компоненты для кастомизации.

Улучшения фильтрации по дате
Теперь пользователи могут легко фильтровать по дате с помощью операции "date equals" (дата равна) в genericFilter и propertyFilter. Она игнорирует временную часть, так что вы получаете результаты со значениями, входящими в искомую дату.

Кроме того, диалог Date Interval (Интервал дат) теперь поддерживает произвольные начальную и конечную даты, заменяя условия >= и < единым интуитивно понятным элементом управления.

Улучшения Data Repositories
Репозитории данных в Jmix 2.7 стали более мощными и удобными.
JmixDataRepository теперь расширяет ListCrudRepository: все методы
findAll()теперь возвращаютListвместоIterable.Поддержка скалярных запросов и агрегатных функций: используйте аннотации
@Queryдля непосредственной выборки скалярных значений или результатов агрегатных функций — идеально для метрик и сводок без полной загрузки сущностей.Пагинация: Page vs. Slice: используйте
Pageдля получения полной информации о пагинации (включая COUNT-запрос) или новыйfindAllSlice()для более легких результатовSlice, при котором не выполняется подсчет общего количества, снижая нагрузку на базу данных.Новые делегаты для упрощения использования репозиториев: вызывайте репозитории в экранах с помощью
loadFromRepositoryDelegateиtotalCountByRepositoryDelegate, которые избавляют от необходимости явно конвертировать параметры изLoadContext. Эти делегаты генерируются автоматически при использовании репозиториев данных в мастере создания экранов.
Отчеты на этапе разработки
Дополнение Reports теперь позволяет определять структуру отчетов в Java-классах на этапе разработки. Среди преимуществ: определения отчетов хранятся в системе контроля версий (Git), вы можете отлаживать логику отчета в своей IDE, а обновления отчетов автоматически попадают в развернутые системы.
Обратите внимание, что этот подход дает максимальный контроль разработчику, но исключает модификацию отчета во время выполнения со стороны конечных пользователей.
Смотрите примеры в Руководстве по генерации отчетов.

REST DataStore
Дополнение REST DataStore теперь поддерживает совместное использование сущностей и интерфейсов сервисов интегрированными приложениями. Это сокращает дублирование кода и усилия по разработке, но может привести к более тесной связанности между приложениями.
Обновленные зависимости
Фреймворк Vaadin обновлен до версии 24.9.
Планы на будущее
Следующий функциональный релиз ожидается в феврале 2026 года. Мы планируем реализовать следующее:
Обновить технологический стек до Spring Boot 4, Vaadin 25, EclipseLink 5
Выпустить дополнение SAML
Реализовать визуализацию модели данных в работающем приложении
Заключение
Jmix 2.7 знаменует собой еще один шаг вперед в упрощении и повышении эффективности корпоративной разработки.
Если у вас есть вопросы, вы хотите поделиться опытом или просто пообщаться с другими пользователями, присоединяйтесь к нам на форуме или в Telegram.
Спасибо всем в сообществе за ваши полезные отклики. Мы надеемся, что Jmix 2.7 поможет вашим проектам стать еще успешнее!
