Olá pessoal
Aqui eu tenho uma validação que fiz e funciona:
JAVA
public class ProjetoController {
private Result result;
private ProjetoDao dao = new ProjetoDao();
private Validator validator;
public ProjetoController(Result result, Validator validator){
this.result = result;
this.validator = validator;
}
@Path("/projetos")
@Post
public void insert(Projeto projeto){
//Validação
if(projeto.getNome().equals("")){
validator.add(new ValidationMessage("Nome em Branco","nomeEmBranco"));
}
validator.onErrorUse(Results.page()).of(getClass()).erro();
//validator.onErrorUse(Results.logic()).redirectTo(getClass()).list();
//Inserção e redirecionamento de página
dao.insert(projeto);
result.use(Results.logic()).redirectTo(getClass()).list();
}
public void erro(){
}
//...
}
erro.jsp
<HTML>
<BODY>
<c:forEach var="error" items="${errors}">
${error.message}
</c:forEach>
</BODY>
</HTML>
Porém, eu gostaria de exibir a mensagem de erro no próprio formulário:
list.jsp
<form action="<c:url value="/projetos"/>"/>
Projeto: <br><input name="projeto.nome"/><br>
<button type="submit" name="_method" value="POST">SALVAR</button>
<button type="submit" name="_method" value="DELETE">DELETAR</button><br>
</form>
Tentei direcionar para o método list() e inserir o código do erro.jsp no list.jsp mas não apareceu nada.
Se alguém puder me ajudar, agradeço desde já!!!
Obrigado.