Olá a todos.
Estou com uma dificuldade: mostrar a mensagem de erro (erro ocorrido durante a validação do formulário) na view. Bem, não estou usando os helpers.
No meu validador tem o seguinte campo
[...]
public boolean temErros(EntityManager em, DynamicForm formulario){
if ((instituicao.getInstituicaobyName(em, formulario.get("instituicao")) == null)){
formulario.reject(new ValidationError("disciplina", "O campo de disciplina não pode ser vazio"));
}
return formulario.hasErrors();
}
[...]
No meu Controller
[...]
if(validador.temErros(jpa.em(), formulario)){
flash("danger", "Há erros no formulário.");
badRequest(docenciaForm.render(formulario));
}
Na minha view...
@(form: DynamicForm)
[...]
@main("ok"){
<form id="form" method="post" action="/docencia/cadastro" class="form-horizontal" >
<div class="form-group relative">
<label for="instituicao" class="control-label col-xs-2">Nome da Instituicao</label>
<div class="col-xs-10">
<input type="text" class="form-control autocomplete" id="instituicao" name="instituicao" placeholder="Informe o nome da instituicao">
</div>
<a href="/tabelas/cadastro/instituicao" id="btnAddInstituicao" class="btn btn-inverse absolute" title="Adicionar uma instituicao ao Banco de Dados">
<span class="glyphicon glyphicon-plus"></span>
</a>
<!-- AQUI -->
@form.error("instituicao").map { error =>
error.message
}
</div>
}
É aqui na view que não sei que código Scala por para que o erro ocorrido e registrado em
//formulario.reject(new ValidationError("disciplina", "O campo de disciplina não pode ser vazio"));
seja apresentado abaixo de do input de Instituicao.