Reputation: 25
Trying to generate a custom 400 response. I cannot for the life of me figure out how to send a 204 in place of a 400 response in my global settings. Please let me know if you cna help me out.
Thanks
public class Global extends GlobalSettings {
@Override
public Promise<Result> onBadRequest(RequestHeader request, String error){
return status(204); //ideally but don't know what to put here
}
}
Upvotes: 1
Views: 42
Reputation: 863
Here you go,
public class Global extends GlobalSettings {
@Override
public Promise<Result> onError(RequestHeader arg0, Throwable arg1) {
super.onError(arg0, arg1);
return F.Promise.promise(()->{return play.mvc.Results.noContent();});
}
@Override
public Promise<Result> onBadRequest(RequestHeader arg0, String arg1) {
super.onBadRequest(arg0, arg1);
return F.Promise.promise(()->{return play.mvc.Results.noContent();});
}
}
In your application.conf
# Define the Global object class for this application.
# Default to Global in the root package.
application.global=Global
Upvotes: 1
Reputation: 582
hope this helps:
public class Global extends GlobalSettings {
@Override
public play.mvc.Result onBadRequest(RequestHeader request, String error) {
return play.mvc.Results.noContent(); //Generates a 204 NO_CONTENT simple result
}
}
Upvotes: 0