Alguem saberia responder a diferença entre DynaValidatorActionForm e DynaValidatorForm, quando usar um e quando usar outro.
Muito Obrigado.
Alguem saberia responder a diferença entre DynaValidatorActionForm e DynaValidatorForm, quando usar um e quando usar outro.
Muito Obrigado.
A documentação diz as mesmas coisas sobre as duas (até o texto é o mesmo) mas a primeira herda da segunda:
http://struts.apache.org/api/org/apache/struts/validator/DynaValidatorForm.html
http://struts.apache.org/api/org/apache/struts/validator/DynaValidatorActionForm.html
DynaValidatorActionForm
seria na execução da Action validar o Form
DynaValidatorForm
seria na execução do Form validar os dados

DynaValidatorActionForm
seria na execução da Action validar o Form
DynaValidatorForm
seria na execução do Form validar os dados
Validar na execução do form? E o form executa :?:
o proprio nome diz, eu tenho exemplos pq eu uso bantante…
agora o termo didatico eu teria q pegar aqui para passar para vcs…

putz pessoal eu tenho exemplo somente de DynamicForm
.javapackage br.calleidoscope.action;
import java.util.LinkedList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionError;
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.validator.DynaValidatorForm;
import br.calleidoscope.bean.CampanhaData;
import br.calleidoscope.bean.ErrorsData;
import br.calleidoscope.dao.AdminCampanhasDAO;
import br.calleidoscope.form.SaveInsertCampanhaForm;
/**
* @author kleber
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class SaveInsertCampanhaAction extends Action{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
System.out.println("Iniciando SaveInsertCampanhaAction");
DynaValidatorForm dynaForm = (DynaValidatorForm) form;
ActionErrors errors = new ActionErrors();
SaveInsertCampanhaForm campanhaForm=new SaveInsertCampanhaForm();
try {
HttpSession session = request.getSession();
// popula o bean do usuario com os dados que vieram do Form
CampanhaData campanha = (CampanhaData) session.getAttribute("insertCampanhaBean");
System.out.println("Iniciando insertCampanhaBean");
campanha.setcampCodCampanha(Integer.parseInt((String)dynaForm.get("campCodCampanha")));
System.out.println("campCodCampanha:"+Integer.parseInt((String)dynaForm.get("campCodCampanha")));
campanha.setcampDescricao((String)dynaForm.get("campDescricao"));
System.out.println("campDescricao:"+(String)dynaForm.get("campDescricao"));
campanha.setcampDtInicial((String)dynaForm.get("campDtInicial"));
System.out.println("campDtInicial:"+(String)dynaForm.get("campDtInicial"));
campanha.setcampDtFinal((String)dynaForm.get("campDtFinal"));
System.out.println("campDtFinal:"+(String)dynaForm.get("campDtFinal"));
campanha.setcampQdeLigRamais(Integer.parseInt((String)dynaForm.get("campQdeLigRamais")));
System.out.println("campQdeLigRamais:"+Integer.parseInt((String)dynaForm.get("campQdeLigRamais")));
campanha.setcampRotaDefaultLocal(Integer.parseInt((String)dynaForm.get("campRotaDefaultLocal")));
System.out.println("campRotaDefaultLocal:"+Integer.parseInt((String)dynaForm.get("campRotaDefaultLocal")));
campanha.setcampRamal(Integer.parseInt((String)dynaForm.get("campRamal")));
System.out.println("campRamal:"+Integer.parseInt((String)dynaForm.get("campRamal")));
campanha.setcampNASinalizacao((String)dynaForm.get("campNASinalizacao"));
System.out.println("campNASinalizacao:"+(String)dynaForm.get("campNASinalizacao"));
campanha.setcampStatus(4);
System.out.println("campStatus:4");
campanha.setcampTentativasOcupado(Integer.parseInt((String)dynaForm.get("campTentativasOcupado")));
System.out.println("campTentativasOcupado:"+Integer.parseInt((String)dynaForm.get("campTentativasOcupado")));
campanha.setcampTentativasNAtende(Integer.parseInt((String)dynaForm.get("campTentativasNAtende")));
System.out.println("campTentativasNAtende:"+Integer.parseInt((String)dynaForm.get("campTentativasNAtende")));
campanha.setcampTentativasOutros(Integer.parseInt((String)dynaForm.get("campTentativasOutros")));
System.out.println("campTentativasOutros:"+Integer.parseInt((String)dynaForm.get("campTentativasOutros")));
campanha.setcampTentativasRamalIndisp(Integer.parseInt((String)dynaForm.get("campTentativasRamalIndisp")));
System.out.println("campTentativasRamalIndisp:"+Integer.parseInt((String)dynaForm.get("campTentativasRamalIndisp")));
campanha.setcampIntervaloRediscOcupado(Integer.parseInt((String)dynaForm.get("campIntervaloRediscOcupado")));
System.out.println("campIntervaloRediscOcupado:"+Integer.parseInt((String)dynaForm.get("campIntervaloRediscOcupado")));
campanha.setcampIntervaloRediscNAtende(Integer.parseInt((String)dynaForm.get("campIntervaloRediscNAtende")));
System.out.println("campIntervaloRediscNAtende:"+Integer.parseInt((String)dynaForm.get("campIntervaloRediscNAtende")));
campanha.setcampIntervaloRediscOutros(Integer.parseInt((String)dynaForm.get("campIntervaloRediscOutros")));
System.out.println("campIntervaloRediscOutros:"+Integer.parseInt((String)dynaForm.get("campIntervaloRediscOutros")));
campanha.setcampIntervaloRediscRamalIndisp(Integer.parseInt((String)dynaForm.get("campIntervaloRediscRamalIndisp")));
System.out.println("campIntervaloRediscRamalIndisp:"+Integer.parseInt((String)dynaForm.get("campIntervaloRediscRamalIndisp")));
System.out.println("campanha.getcampCodCampanha():"+campanha.getcampCodCampanha());
System.out.println("campanha.getcampDescricao():"+campanha.getcampDescricao());
System.out.println("campanha.getcampQdeLigRamais():"+campanha.getcampQdeLigRamais());
System.out.println("campanha.getcampRotaDefaultLocal():"+campanha.getcampRotaDefaultLocal());
System.out.println("campanha.getcampRamal():"+campanha.getcampRamal());
System.out.println("campanha.getcampNASinalizacao():"+campanha.getcampNASinalizacao());
System.out.println("campanha.getcampStatus():"+campanha.getcampStatus());
System.out.println("campanha.getcampTentativasOcupado():"+campanha.getcampTentativasOcupado());
System.out.println("campanha.getcampTentativasNAtende():"+campanha.getcampTentativasNAtende());
System.out.println("campanha.getcampTentativasOutros():"+campanha.getcampTentativasOutros());
System.out.println("campanha.getcampTentativasRamalIndisp():"+campanha.getcampTentativasRamalIndisp());
System.out.println("campanha.getcampIntervaloRediscOcupado():"+campanha.getcampIntervaloRediscOcupado());
System.out.println("campanha.getcampIntervaloRediscNAtende():"+campanha.getcampIntervaloRediscNAtende());
System.out.println("campanha.getcampIntervaloRediscOutros():"+campanha.getcampIntervaloRediscOutros());
System.out.println("campanha.getcampIntervaloRediscRamalIndisp():"+campanha.getcampIntervaloRediscRamalIndisp());
AdminCampanhasDAO adminCampanhasDAO = new AdminCampanhasDAO();
adminCampanhasDAO.insertCampanha(campanha);
session.removeAttribute("insertCampanhaBean");
session.removeAttribute("campanhaListBean");
LinkedList campanhasList = new LinkedList();
campanhasList=adminCampanhasDAO.getCampanhaList();
session.setAttribute("campanhaListBean", campanhasList);
System.out.println("SaveInsertCampanhaAction ok");
}
catch (Exception e) {
System.out.println("erro:SaveInsertCampanhaAction "+e.getMessage());
errors.add(
ActionErrors.GLOBAL_ERROR,
new ActionError("error.insert.campanha"));
}
if (!errors.isEmpty()) {
saveErrors(request, errors);
return (mapping.findForward("failure"));
}
else {
return (mapping.findForward("success"));
}
}
}
<form-bean dynamic="true" name="saveInsertCampanhaForm" type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="campCodCampanha" type="java.lang.String" />
<form-property name="campDescricao" type="java.lang.String" />
<form-property name="campDtInicial" type="java.lang.String" />
<form-property name="campDtFinal" type="java.lang.String" />
<form-property name="campQdeLigRamais" type="java.lang.String" />
<form-property name="campRotaDefaultLocal" type="java.lang.String" />
<form-property name="campRamal" type="java.lang.String" />
<form-property name="campNASinalizacao" type="java.lang.String" />
<form-property name="campTentativasOcupado" type="java.lang.String" />
<form-property name="campTentativasNAtende" type="java.lang.String" />
<form-property name="campTentativasOutros" type="java.lang.String" />
<form-property name="campTentativasRamalIndisp" type="java.lang.String" />
<form-property name="campIntervaloRediscOcupado" type="java.lang.String" />
<form-property name="campIntervaloRediscNAtende" type="java.lang.String" />
<form-property name="campIntervaloRediscOutros" type="java.lang.String" />
<form-property name="campIntervaloRediscRamalIndisp" type="java.lang.String" />
<form-property name="campStatus" type="java.lang.String" />
</form-bean>
não sei se ajuda....
:lol:
Continuo sem entender…
Onde foi que o form executou?
E bota um logger aí pelo amor de deus, esse monte de System.out.println() tá terrível :mrgreen:
A documentação diz as mesmas coisas sobre as duas (até o texto é o mesmo) mas a primeira herda da segunda:http://struts.apache.org/api/org/apache/struts/validator/DynaValidatorForm.html
http://struts.apache.org/api/org/apache/struts/validator/DynaValidatorActionForm.html
O texto é quase igual.
A diferença é a chave usada para buscar a regra de validação no (ou nos) arquivos de validação (validator-xxxxx.xml).
No DynaValidatorForm, a chave é o valor do atributo “name” do form.
No DynaValidatorActionForm, a chave é o path da action que estiver no form.
Ahhhhhhhhh
Agora eu entendi :mrgreen:
Valeu Muito Obrigado.
Bem q eu queria… esqueci de tirar os comments…
Regras de segurança…
:roll:
Bom dia a todos
Estou com alguns problemas ao usar o Validator se alguem poder me ajudar segue abaixo as duvidas.
Ao chamar o validator no jsp "onsubmit="return validateUserForm(this); para mim não funciona porque eu ja utilizo uma função javascript no onclick pois já tentei chamar esta função do validator na função que já uso mas não funciona.
A segunda dúvida é que quando utilizo DynaValidatorForm eu consigo validar no servidor e no cliente pois quando utilizo DynaValidatorActionForm eu só consigo validar no servidor.
Muito Obrigado.
Pessoal estou começando a mexer com Struts… fico legal esse tópico de validação… mas não entendi isso…
CampanhaData campanha = (CampanhaData)session.getAttribute(“insertCampanhaBean”);
não entendi o q é esse insertCampanhaBean…
alguem poderia me dar um help…
“insertCampanhaBean” é o nome do atributo a ser recuperado.