Tenho varios metodos que serializam uma consulta no JPA (Hibernate).
Acontece que quando utilizo por exemplo:
result.use(Results.json()).withoutRoot().from(url).include("dominio").serialize();
No caso o dominio é um outro objeto do JPA, carregado em modo Lazy.
Tem como criar um JsonSerializar para tratar isto e fazer o getImplementation do HibernateProxy?
Porque até tenho uma função para fazer o getImplementation, mas funciona só para o objeto principal, no caso a "url".
Para um List ou objetos que adiciono no result.include não funciona.
Cheguei a criar um conversor, mas que não esta funcionando:
public class HibernateProxyGsonConverter implements JsonSerializer<HibernateProxy> {
@Override
public JsonElement serialize(HibernateProxy src, Type typeOfSrc, JsonSerializationContext context) {
Object deProxied = src.getHibernateLazyInitializer().getImplementation();
return new Gson().toJsonTree(deProxied);
}
}
Alguma ideia de como resolver isto?
Att.