作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有没有人成功地将 Squeryl 的 externalTransactionManagementAdapter 与 play framework 2.0 一起使用?:
object Global extends GlobalSettings {
override def onStart(app: Application) {
SessionFactory.externalTransactionManagementAdapter = Some(() =>
Some(new Session(
DB.getDataSource().getConnection(),
dbAdapter)
)
)
}
SessionFactory.concreteFactory
,但后来我必须使用事务块而不是 squeryl 参与 Play 的事务管理。
最佳答案
这两天一直困扰着我,所以我喝了点咖啡,浪费了我生命中的一个小时,但我想向你展示我是如何让它工作的:
在您的 Global.scala
把这个:
override def onStart(app: Application) {
SessionFactory.externalTransactionManagementAdapter = Some(() => {
if(org.squeryl.Session.hasCurrentSession) {
org.squeryl.Session.currentSessionOption.get
}
else {
val s = new org.squeryl.Session(DB.getDataSource().getConnection(), new PostgreSqlAdapter){
override def cleanup = {
super.cleanup
unbindFromCurrentThread
}
}
s.bindToCurrentThread
s
}
})
}
/**
* cleans up Squeryl thread to each request
*/
override def onRouteRequest(request: RequestHeader): Option[Handler] = {
org.squeryl.Session.currentSessionOption.foreach(_.unbindFromCurrentThread)
super.onRouteRequest(request)
}
关于playframework-2.0 - 如何在 play 2.0 中使用 Squeryl 的 externalTransactionManagementAdapter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9767601/
有没有人成功地将 Squeryl 的 externalTransactionManagementAdapter 与 play framework 2.0 一起使用?: object Globa
我是一名优秀的程序员,十分优秀!