0

我收到以下编译时错误

call(play.mvc.Http.Context) in actions.Headers cannot override call(play.mvc.Http.Context) in play.mvc.Action
[error]   overridden method does not throw java.lang.Exception
[error]        public CompletionStage<Result> call(final Http.Context ctx) throws Throwable {

这是代码:

public CompletionStage<Result> call(final Http.Context ctx) throws Throwable {
           ctx.response().setHeader("Access-Control-Allow-Origin", "*");
           ctx.response().setHeader("Allow", "*");
           ctx.response().setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, DELETE, OPTIONS");
           ctx.response().setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Referer, User-Agent, token");
           ctx.response().setHeader("Access-Control-Expose-Headers", "Origin, X-Requested-With, Content-Type, Accept, Referer, User-Agent, token");

           return (CompletionStage<Result>) delegate.call(ctx);
       }

我正在使用游戏framework 2.6

4

2 回答 2

2

根据 playframework 2.6 的文档,Action 类中的方法调用不再抛出 Thowable,因此您的方法也不能这样做。

于 2019-02-09T12:15:17.937 回答
1

只需从您的方法声明中删除 [throws Throwable] 即可。

于 2019-02-09T12:10:23.533 回答