java.lang.UnsupportedOperationException: Tentative de sérialiser java.lang.Class: org.mise en veille prolongée.proxy.HibernateProxy
Je suis en utilisant un service web Restful (Jersy, mise en œuvre) avec une application JSF et Json utilisé pour obtenir les données comme suit:
carObjectDao = new GenericDAO<carObject>(carObject.class);
List<carObject> allCars = carObjectDao.readAll();
Gson gson = new Gson();
String carString = gson.toJson(allCars);
System.err.println(carString );
return carString ;
je exécuter l'application en mode debug et allCars est remplie avec les données correctement, mais après qu'une exception est levée :
java.lang.UnsupportedOperationException: Attempted to serialize java.lang.Class: org.hibernate.proxy.HibernateProxy. Forgot to register a type adapter?
je ne sais pas la cause de l'exception
Vous devez unproxy la HibernateProxy objets, ou si vous n'avez pas vraiment besoin de données, il suffit de mettre em null.
pourriez-vous expliquer plus, je n'ai pas compris
pourriez-vous expliquer plus, je n'ai pas compris
OriginalL'auteur Java Player | 2013-05-15
Vous devez vous connecter pour publier un commentaire.
C'est un problème connu: Ne pouvait pas sérialiser l'objet cause de HibernateProxy
JSon ne peut pas désérialiser HibernateProxy objets, de sorte que vous unproxy ou supprimer des em.
Ou, vous pouvez désireux de récupérer le paresseux de données.
Poing vous devez comprendre comment l'initialisation tardive de travaux, lorsque vous n'avez pas désireux de récupérer une collection, ou de charger un objet, c'est un Hibernate proxy collection/objet, vous devez vous renseigner auprès de votre allCars objets, l'enfant de la collection ou des objets sont à venir comme HibernateProxy au lieu de données réelles.
Après cela, vous pouvez décider quoi faire avec em (supprimer em ou fixer em).
OriginalL'auteur Ziul