Бага с диалоговым окном

Версия 2.3.1 java 21

Для тестов завели форму Product, сценарий бага

  1. Создаем новую запись
  2. Редактируем ее
  3. Кликаем на запись, которая уже существует (В примере запись Test User)
  4. Кликаем обратно на новую запись
  5. Нажимаем кнопку изменить, поднимается форма с предыдущей записью, при удалении также удалиться предыдущая запись.
    Ошибка предположительно воспроизводится после добавления
                    <properties>
                        <property name="openMode" value="DIALOG"/>
                        <property name="viewId" value="Product.create"/>
                    </properties>

в action create, edit.

Тестовый проект

Спасибо за сообщение об ошибке.

Завел тикет: List view opens incorrect entity for edit · Issue #4004 · jmix-framework/jmix · GitHub, постараемся исправить в одном из следующих патчей Jmix 2.4.

С уважением,
Константин

Спасибо.
Уточнение - проблема именно с dialog Mode

Здравствуйте. Видимо в версии jmix 2.5 проблема вернулась, так как после обновления до версии 2.5 снова воспроизводится. Я вижу что фикс откатили, когда проблема полностью решится, или хотя бы как можно обойти это?

Добрый день!

Вашу проблему очень просто решить: уберите аннотацию @Data с сущностей.
См. https://docs.jmix.ru/jmix/data-model/entities.html:

Не создавайте методы equals() и hashCode() в ваших классах сущностей явно или с помощью процессоров аннотаций. Эти методы будут сгенерированы автоматически фреймворком во время сборки приложения. Сгенерированные методы будут использовать идентификаторы сущностей для сравнения.

В частности, никогда не добавляйте аннотации @EqualsAndHashCode и @Data от Lombok к классам сущностей.

С уважением,
Константин