Form validation play framework 2.0

Estou seguindo o tutorial emhttp: //www.playframework.org/documentation/2.0/JavaForm

Eu criei uma classe LoginForm.java (em vez de User.class do exemplo. Não é uma classe para persistir, apenas um detentor de valores de formulário)

package domain;

import static play.data.validation.Constraints.*;

public class LoginForm {

        @Required
        public String email;
        public String password;

}

E no meu controlador, eu faço (como o exemplo), mas defino os valores para Strings vazias para tentar a anotação @Require

Form<LoginForm> loginForm = form(LoginForm.class);
Map<String,String> anyData = new HashMap();
anyData.put("email", "");
anyData.put("password", "");

//Faking a post
LoginForm postedLoginForm = loginForm.bind(anyData).get();

if(loginForm.hasErrors()) {
  //Just for this test task, should have another error handling..
  return ok("@Required annotation kicked in..");
} else {
  return ok("Got form values, email: " + postedLoginForm.email + " password: " + postedLoginForm.password);
}

Mas em

LoginForm postedLoginForm = loginForm.bind(anyData).get();

Recebo uma exceção de execução [[IllegalStateException: sem valor]]

Então, nunca verifica / trata de

if(loginForm.hasErrors()) 

Alguém sabe por que isso acontece? Se eu definir os valores como no exemplo:

Map<String,String> anyData = new HashMap();
anyData.put("email", "[email protected]");
anyData.put("password", "secret");

Tudo funciona e recupero o objeto LoginForm com os valores corretos. Devo pegar a exceção? O jogo não deve cuidar disso e definir loginForm.hasErrors = true?

Obrigado por qualquer ajuda

questionAnswers(4)

yourAnswerToTheQuestion