我正在使用Dozer从一个对象映射到另一个对象,但是我发现错误:
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: ... , could not initialize proxy - no Session
当我在为所有集合映射field.size()之前使用它时,它确实很烦人。是否有一些选项可以用初始化的所有集合来加载hibernate对象?|
答案 0 :(得分:1)
这不是推土机的问题。您正在以错误的方式访问您的数据。在你的hibernate实体中,你有一些惰性引用(对于集合,另一个实体,......),但你将它转换为hibernate会话之外的某个bean(你的实体处于所谓的'分离'状态)。
此问题的解决方案取决于您的情况。你可以:
映射字段size
甚至可以用于延迟集合。元素的数量可能是已知的,但内容不是。
编辑:更多解决方案: