1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| package controllers;
import exceptions.UserNotFindException;
import exceptions.WrongPasswordConnectionException;
import models.User;
import play.*;
import play.mvc.*;
import play.data.*;
import models.*;
import views.html.*;
public class Authentication extends Controller {
public static class AuthenticatedUser{
public String login;
public String password;
public String validate() {
System.out.println("login:("+this.login+")");
System.out.println("login:("+this.password+")");
//le problème se situe ici car ces traces me renvoient null pour login et password
String result=null;
try {
if (User.authenticate(login, password) != null) result=null;
} catch (WrongPasswordConnectionException e) {
result=" mauvais password";
} catch (UserNotFindException e){
result="User non trouvé";
}
return result;
}
}
public static Result login() {
return ok(
login.render(Form.form(AuthenticatedUser.class))
);
}
public static Result authenticate() {
Form<AuthenticatedUser> loginForm =
Form.form(AuthenticatedUser.class).bindFromRequest();
System.out.println(loginForm.toString());
if(loginForm.hasErrors()) {
return badRequest(login.render(loginForm));
} else {
session("login", loginForm.get().login);
return redirect(
routes.Application.index()
);
}
}
//Fermer la session
public static Result logout() {
session().clear();
flash("success", "Vous êtes déconnecté(e)");
return redirect(
routes.Authentication.login()
);
}
} |
Partager