Boa noite, pessoal!
Após finalizar o projeto do curso, criei um novo Controller para envio de formulário de contato via e-mail e armazenagem dos dados do formulário no banco de dados. Utilizei o mesmo código do ProdutoController para gravação dos dados, porém está retornando "Neither BindingResult nor plain target object for bean name 'contact' available as request attribute" quando tento acessar a Home onde está o formulário de contato. Segue abaixo o código:
Método Gravar na classe ContactController
@RequestMapping(method = RequestMethod.POST)
public ModelAndView record(@Valid Contact contact, BindingResult result, RedirectAttributes redirectAttributes) {
if (result.hasErrors()) {
return add(contact);
}
contactDao.record(contact);
sendMailContact(contact);
redirectAttributes.addFlashAttribute("success", "Mensagem enviada com sucesso!");
return new ModelAndView("redirect:/");
}
JSP
<form:form
servletRelativeAction="${s:mvcUrl('CC#record').build() }"
method="POST" commandName="contact"
cssClass="cmxform form-horizontal"
enctype="multipart/form-data">
<div class="form-group ">
<label for="cname" class="control-label col-lg-3">Nome *</label>
<form:errors path="name" />
<div class="col-lg-6">
<form:input path="name" cssClass="form-control" />
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">E-mail *</label>
<form:errors path="email" />
<div class="col-lg-6">
<form:input path="email" cssClass="form-control" />
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">Celular *</label>
<form:errors path="phone" />
<div class="col-lg-6">
<form:input path="phone" cssClass="form-control" />
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">Assunto *</label>
<form:errors path="subject" />
<div class="col-lg-6">
<form:input path="subject" cssClass="form-control" />
</div>
</div>
<div class="form-group">
<label class="control-label col-lg-3">Mensagem *</label>
<form:errors path="message" />
<div class="col-lg-6">
<form:textarea path="message" cssClass="form-control" />
</div>
</div>
<div class="form-group">
<div class="col-lg-offset-3 col-lg-6">
<button class="btn btn-primary" type="submit">Salvar</button>
<button class="btn btn-default" type="button">Cancelar</button>
</div>
</div>
</form:form>
Se alguém puder dar uma força, desde já, agradeço! Abraço!