После загрузки объекта (с помощью загрузки или поиска), непосредственно перед возвратом ответа, я бы хотел изменить объект (фактическую ссылку). Кто-нибудь знает как это сделать?
Причина заключается в том, что объект, в который свойства были введены во время загрузки, является объектом построителя.
Я пытался использовать PostLoadEventListener, как это:
public void onPostLoad(PostLoadEvent event) {
Object entity = event.getEntity();
if(null != entity && entity instanceof MyBuilder){
MyBuilder builder = (MyBuilder)entity;
MyActualClass result = builder.build();
event.setEntity(result);
}
}
но похоже, что все, что я установил в этом событии, игнорируется и теряется (имеет смысл, так работают события).
Единственный оставленный вариант - переопределение EntityPersister, но это так отвратительно!
Вы знаете другое, более элегантное решение?
Спасибо!
Cristian