Play Framework 2.3:在java控制器中使用scala动作组合

时间:2014-10-02 10:51:06

标签: java scala playframework playframework-2.0 playframework-2.3

由于源自this question的原因,我需要在scala中编写一个可以在java控制器中使用的自定义动作组合,如下所示:

LogAction.scala(Scala自定义动作合成):

import play.api.mvc._

class LogAction extends ActionBuilder[Request] {

    def invokeBlock[A](request: Request[A], block: (Request[A]) => Future[Result]) = {
        Logger.info("Calling action")
        block(request)
    }

}

Application.java(Java控制器):

import LogAction;
import play.mvc.Controller;
import play.mvc.Result;
import play.mvc.With;

public class Application extends Controller {

    @With(LogAction.class)
    public static Result index() {
        return ok(views.html.admin.main.render());
    }

}

这样的事情可能吗?如果是,那怎么样?最终目标是使用此特定操作组合记录请求和响应主体。

0 个答案:

没有答案