Boa tarde pessoal estou querendo implementar a validação de um formulário mais estou tendo algumas dificuldade…
Meu formulário é o seguinte:
<form-bean name="despachanteForm" type="org.apache.struts.validator.DynaValidatorActionForm" dynamic="true">
<form-property name="codigo" type="java.lang.Long"/>
<form-property name="nome" type="java.lang.String" />
</form-bean>
Meu Action está definido destá maneira:
<action path="/despachante"
name="despachanteForm"
type="br.com.fts.exp.action.DespachanteAction"
scope="session"
validate="true"
input="fts.despachante"
parameter="metodo">
<forward name="edita" path="fts.despachante"/>
</action>
Defini o atributo nome como requerido no validation.xml desta forma:
<form name="despachanteForm">
<field property="nome" depends="required">
<arg0 key="despachanteForm.nome"/>
</field>
</form>
Já no meu JSP eu fiz o seguinte:
<html:javascript formName="despachanteForm"/>
<html:form action="despachante.do?metodo=salva" method="post">
// meu form normal com os input's....
<html:text property="nome" name="despachante" size="40">
<html:errors property="nome"/>
</html:form>
Esta é minha classe:
package br.com.fts.exp.action;
import java.util.Collection;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;
import org.apache.struts.actions.DispatchAction;
import br.com.fts.exp.bean.Despachante;
import br.com.fts.exp.dao.DespachanteDAO;
public class DespachanteAction extends DispatchAction {
public ActionForward novo(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
HttpSession session = request.getSession();
Collection listaDespachantes = DespachanteDAO.getInstance().listaTodos();
Despachante despachante = new Despachante();
session.setAttribute("listaDespachantes", listaDespachantes);
session.setAttribute("despachante", despachante);
return mapping.findForward("edita");
}
public ActionForward salva (ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
DynaActionForm formDinamico = (DynaActionForm) form;
Despachante despachante = new Despachante();
despachante.setCodigo((Long) formDinamico.get("codigo"));
despachante.setNome((String) formDinamico.get("nome"));
DespachanteDAO.getInstance().salva(despachante);
formDinamico.reset(mapping, request);
return mapping.findForward("sucesso");
}
}
Defini no MessageResources.properties o despachante.nome = blablabla…
Quando clico no botao para dar o Submit ele nao faz nada… envia a pagina e nao apresenta mensagem alguma
alguém ai sabe me falar o que estou fazendo de errado…
Obrigadooooo
