Я использую Грааль с Горм (Hibernate).
В целях тестирования мне нужно надежно создать ситуацию, когда Hibernate оборачивает доменные объекты в свой собственный помощник.
С http://www.tothenew.com/blog/extract-correct-class-from-hibernate-object-wrapped-with-javassist/
Так что, если мы вызовем class.name для членов коллекций в отношениях один ко многим или много ко многим, мы получим имена классов
что-то вроде com.test.classname_javassist_59.
Но я не могу повторить это. У меня есть тестовый случай, когда
коллекция hasMany загружена лениво, но я никогда не получаю помощь java.
Я также попробовал лениво загруженную ассоциацию один к одному, и она также не возвращает java_assist в имени класса.
class TestCase{
static hasMany=[testCollection:TestCollection]
}
//test...
TestCase.get(1);
//lazy access collection item
TestCase.testCollection[0].class.name // no java assist
//lazy load one to one association testCaseB
TestCase.testCollection[0].testCaseB.class.name// no java assist
//...
Этот вопрос о переполнении стека Hibernate: всегда ли Hibernate использует прокси-объекты объектов? описывает ответ, но я все еще не смог создать реализацию кода, демонстрирующую его.