Еще одна вещь, которая, на мой взгляд, сработает, и, вероятно, не потребует гораздо больше работы (возможно, на самом деле меньше), чем ответ Рэя: не редактируйте объект, который вы хотите сохранить, а его копию (созданную с помощью RequestContext.create()
) сделайте копию перед редактированием, а затем очистите и скопируйте обратно в ваш компонент (в другом RequestContext
) перед выстрелом.
Это, однако, предполагает, что одновременных изменений не будет, из-за асинхронного взаимодействия с сервером (пользователь может продолжить редактирование, и вам придется обнаруживать и разрешать «конфликты», если кто-то еще редактировал тот же объект одновременно) ,
Чтобы сделать копию, используйте AutoBeanUtils.getAutoBean
, чтобы вывести компонент из RF-прокси, затем AutoBeanVisitor
, чтобы просмотреть все свойства и скопировать их значения в другой прокси / autobean.