我正在将 Turbine 2.3.2 与 Hibernate 3 一起使用。我的问题是当我的(Velocity 1.6.4)模板执行时,Hibernate 会话不活动,并且我正在访问 Hibernate 需要延迟初始化的数据库中的数据。因此我得到一个 LazyInitializationException - 没有会话错误。
因为我希望我的 Hibernate 会话在速度模板执行时仍然存在,所以我希望在 Velocity 模板之后和之前执行一个类。这样我就可以在一个地方打开和关闭我的 Hibernate 会话。(在 Hibernate 中禁用延迟初始化对我来说不是一个选项)。是否有任何与 Turbine 相关的可能性来编写一种侦听器或过滤器(我不确定如何调用它)在 Velocity 模板执行之前和之后执行?或者也许 servlet 容器可以过滤请求……你会推荐什么选项?