Nachshon Schwartz
Nachshon Schwartz

Reputation: 15775

Action in Play 2.3 can't find the call function

I'm migrating a working play 2.2.4 project to play 2.3.7. I have an Authenticate annotation that authenticates the user. Problem is it doesn't compile and returns AuthenticationAction is not abstract and does not override abstract method call(context) in Action.

The following code is what i'm running (I've removed the complicated authentication code here (the error still exists whitout it)):

public class AuthenticateAction extends Action<Authenticate> {
    @Overrirde
    public F.Promise<SimpleResult> call(Http.Context ctx) throws Throwable {
         return delegate.call(ctx);
    }
}

@With(AuthenticatenAction.class)
@RetentionPolicy(Retention.RUNTIME)
public @interface Authenticate {
    String value();
}

Upvotes: 1

Views: 149

Answers (1)

Nachshon Schwartz
Nachshon Schwartz

Reputation: 15775

Found that in play 2.3 the action's call function uses Result and not SimpleResult, so switching to Result solves the problem.

Upvotes: 2

Related Questions