could not initialize proxy - no Session

09-08-06 frogprince

ERROR org.hibernate.LazyInitializationException - could not initialize proxy - no Session

Jdon+hibernate做的系统报这样的错误,在网上找了找,知道是什么原因了,用了懒加载,Session已经关闭了,可以改成openSessionInView,不过看论坛中的帖子,知道这种做法影响性能,还会有一些别的毛病,我的这个系统中是用Jdon的closeSessionInView.

现在不知道怎么弄了,希望高手给指点下,不胜感激~

frogprince
2009-08-06 09:30

看到了另一个帖子

http://www.jdon.com/jivejdon/thread/36718.html

和我的问题差不多,

banq说:都觉得不好,可使用JPA(Hibernate实现)。

Jdon+Hibernate的close session in view也可以参考一下。

想请教Banq,我不明白你说的,可否再详细点.

banq
2009-08-06 09:51

下载页面http://www.jdon.com/jdonframework/download.html

下载Jdon On Rails 即可看到源码。

也是在Web.xml中配置一个CloseSessionInView的filter,相关讨论:

http://www.jdon.com/jivejdon/thread/33723.html

frogprince
2009-08-06 11:42

我的系统就是建在Jdon on rails的基础之上的,直接导入SJH文件夹到Eclipse中开发的,Web.xml中配置了closesessioninview.

我的Model是这样的:

public class Sort extends Model {

Set smallSorts;

Set questions;

}

public class SmallSort extends Model {

Set questions;

}

public class Question extends Model{

String id;

List<Answer> answers=new ArrayList<Answer>();

}

public class Answer extends Model{

String id;

}

当从Sort或SmallSort中得到Set questions时是没有问题的,但如果再从questions中得到answers就会异常:ERROR org.hibernate.LazyInitializationException - failed to lazily initialize a collection of role: com.yang.model.Question.answers, no session or session was closed

如果我在web.xml中把CloseSessionInView的配置给删了之后,就不会有异常信息了.

怎么办啊

frogprince
2009-08-06 11:44

我顶啊顶,

Banq大哥快来救我啊

2Go 1 2 下一页