Boa Tarde, Estou tentando fazer funcionar o metodo public ActionErrors validate
da apostila fj21, fiz todos os passos adicionei o input no struts-config, as mensagem de erro no MessageResources.properties
enfim… gostaria de saber se o metodo abaixo está certo… porque eu adicionei o atributo contato na classe para poder acessar no metodo ActionErros pois
na apostila não ta o metodo completo e eu não conseguia pegar a variavel lpara fazer os ifs do ActionErrors… enfim se alguém puder me ajudar… quando eu cadastro vazio ele passa batido… e grava o contato vazio mesmo…
[code]package br.com.caelum.struts.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import br.com.caelum.DAO.ContatoDao;
import br.com.caelum.modelo.Contato;
import br.com.caelum.struts.form.ContatoForm;
public class AdicionaContatoAction extends Action {
Contato contato;
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
ActionErrors erros = new ActionErrors();
if (contato.getNome() == null || contato.getNome().equals("")) {
erros.add("email", new ActionMessage("erro.campoEndereco"));
}
// verifica o email
if (contato.getEmail() == null || contato.getEmail().equals("")) {
erros.add("email", new ActionMessage("erro.campoEmail"));
}
// verifica o endereco
if (contato.getEndereco() == null || contato.getEndereco().equals("")) {
erros.add("endereco", new ActionMessage("erro.campoEndereco"));
}
return erros;
}
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
// log
System.out.println("Tentando criar num novo contato...");
// formulario do cliente
ContatoForm formulario = (ContatoForm) form;
// acessa o bean
this.contato = formulario.getContato();
// adiciona ao banco de dados
ContatoDao dao = new ContatoDao();
dao.adciona(contato);
// ok... vusualiza;áo
return mapping.findForward("ok");
}
}[/code]