lvzhongjia
2011-05-05 17:29
浏览 271
已采纳

spring配置定时器执行service方法,查询实体时多对一报 could not initialize proxy

如题,我配置了openSessionInViewFilter 而且在actioon查询lazy=false是起作用的,为什么定时器里不可以。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • CaiHuajiang 2011-05-06 16:59
    已采纳

    没什么解法,最简单就是对Hibernate的实体bean进行游离化。

    点赞 打赏 评论
  • CaiHuajiang 2011-05-05 17:49

    因为openSessionInViewFilter 是使用的ThreadLocal,
    而Spring定时器是使用的独立线程。

    点赞 打赏 评论
  • luxixi3600 2011-05-06 09:52

    楼上一语道破天机,哈哈。

    点赞 打赏 评论
  • iteye_4734 2011-05-06 17:58

    因为Spring定时器是使用的独立线程。

    点赞 打赏 评论
  • WAMING5 2011-05-06 21:15

    openSessionInViewFilter 是在请求时过滤去中关闭的Sesion,而Stpring得定时器并没有经过过滤器openSessionInViewFilter的,所以这时候过滤器是并不起总用得

    点赞 打赏 评论
  • WAMING5 2011-05-06 21:19

    openSessionInViewFilter 是在请求时过滤器中关闭的Sesion,而Stpring得定时器并没有经过过滤器openSessionInViewFilter的,所以这时候过滤器是并不起作用得,如果要解决问题,你可以用Hibernate 的HQL语句查询,并且是迫切查询,应该能解决问题。

    点赞 打赏 评论

相关推荐 更多相似问题