【发布时间】:2014-07-20 20:29:58
【问题描述】:
使用 ActionBuilder 创建自定义 Action 时如何使用 guice?
如果我将 ActionBuilder 从对象更改为类,它似乎会抱怨“未找到:值 MyAction”。
我有这个,但它不起作用:
case class MyModel(name: String, request: Request[A]) extends WrappedRequest[A](request)
class MyAction @Inject()(userService: UserService) extends ActionBuilder[MyModel] {
def invokeBlock[A](request: Request[A], block: (MyModel[A]) => Future[SimpleResult]) = {
val abc = loadAbc(request)
block(new MyModel(abc, request))
}
def loadAbc(rh: RequestHeader): String {
"abc" // just for testing
}
}
因此将其从 object 更改为 class 会导致它失败,我尝试将其保留为对象,但它无法正确编译。
我怎样才能让它工作?
它在我的控制器中工作得很好。
【问题讨论】:
标签: scala playframework guice