我正在使用Playframework 2.3.x,我想在我的一个控制器中覆盖BadRequest
方法。我有完全相同的要求,如所见this线程所示,但不确定是否与该线程中看起来不完整的答案有关,或者我无法找到BadRequest parent impl以能够正确覆盖{ {1}}
拥有BadRequest
所有其他控制器BaseController
。我希望在extend
中override
BadRequest
,以便所有控制器(扩展BaseController
)都可以
BaseController
def myMethod (s: String) = {
BadRequest(s) // should return what I'll define in MY BadRequest implementation in `BaseController`
}
我想覆盖BaseController
,以便当上面的方法传入BadRequest
时,它会将其转换为Json,如
s:String
答案 0 :(得分:0)
您可以找到BadRequest here的实现。请注意,BadRequest是一个val,类型为Status
。 Status
类的实现具有允许String参数的apply
函数。由于BadRequest是一个val,它只能被另一个Status
类型的val覆盖,所以我不认为你可以按照你想要的方式覆盖BadRequest。您是否有理由以不同的名称定义它?
def MyBadRequest(msg:String) = BadRequest(Json.toJson(msg))