Skip to content

Instantly share code, notes, and snippets.

@agonist
Created July 24, 2014 07:41
Show Gist options
  • Save agonist/cf3043944c43e734d7d0 to your computer and use it in GitHub Desktop.
Save agonist/cf3043944c43e734d7d0 to your computer and use it in GitHub Desktop.
login route
@Route(method = HttpMethod.POST, uri = "/login")
public Result login(@Body User user) {
Subject currentUser = SecurityUtils.getSubject();
UsernamePasswordToken token = new UsernamePasswordToken(user.getUsername(), user.getPassword());
try {
currentUser.login(token);
} catch (UnknownAccountException uae) {
context().flash().error("Unknown account");
return loginForm();
} catch (IncorrectCredentialsException ice) {
context().flash().error("Wrong password");
return loginForm();
} catch (LockedAccountException lae) {
context().flash().error("Account locked");
return loginForm();
} catch (AuthenticationException ae) {
context().flash().error("some error");
return loginForm();
}
return redirect("protected");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment