GWT не может сериализовать мой объект из Hibernate - PullRequest
2 голосов
/ 01 декабря 2010

Вот ошибка, которую я получаю.Я везде искал ответы и не могу понять, почему кто-то еще не сталкивается с той же проблемой.Ошибка происходит, когда я получаю объект предложения из Hibernate, который имеет ограничение многие-к-одному с User_Info для двух свойств, автора и советника.При необходимости я могу предоставить классы и спящие конфиги.Просто обратите внимание, я реализую isSerializeable и у меня есть пустые конструкторы ... Я действительно ценю любой совет или помощь ...

Ответы [ 2 ]

0 голосов
/ 01 декабря 2010

Для устранения этой ошибки существует несколько опций, вы можете увидеть ее здесь: http://code.google.com/intl/fr-FR/webtoolkit/articles/using_gwt_with_hibernate.html

Новая версия GWT 2.1.0 поставляется с RequestFactory, которая решает эту ошибку с помощью JPA (и, следовательно, Hibernate).

0 голосов
/ 01 декабря 2010

Hibernate использует CGLIB для изменения объектов, которые он загружает во время выполнения, чтобы включить отложенную загрузку отношений объектов.Hibernate также использует внутренние коллекции с отложенной загрузкой (список, карта), в зависимости от отображения.

Обе эти вещи будут препятствовать GWT.Один из способов убедиться, что вы получаете «чистые» объекты в GWT, - это клонировать их, создав новый экземпляр вашего объекта и установив все значения из созданного в спящем режиме на ваш чистый.

Другой -сделайте обход объекта, основанный на отражении, который гарантирует, что нет никаких странных типов, скрывающихся вокруг.

В вашем случае кажется, что что-то задыхается в User_Info:

edu.scranton.segpis.client.shared.User_Info_$$_javassist_2'

Возможно, вы можете выделитьоскорбительное поле (пометьте одно поле за другим как transient, просто чтобы увидеть, какое оно) - и затем исправьте это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...