cara, encarei o mesmo problema …
o pró é q pra uma mesma action vc pede Açoes q devem ser validadas … as acoes q vierem de um form ele valida normalmente, o pró é qnd a ação é pra delete ou listar q nao se tem dados de um form pra validar.
“resolvi” da seguinte maneira, se alguem tiver uma melhor manda ae.
é o seguinte, criei um RequestProcessor customizado
public class CustomRequestProcessor extends TilesRequestProcessor {
e fiz um testezinho antes do controller resolevr fazer ou nao a validacao em cada action pedida
protected boolean processValidate(HttpServletRequest request, HttpServletResponse response, ActionForm form, ActionMapping mapping) throws IOException, ServletException {
// Se for passado o parametro validate e for setado como true, o Controller pode fazer a validação.
String validateParam = request.getParameter("validate");
if ((validateParam != null) && (validateParam.equals("true"))) {
log.info("The request asked for Controller Form Validation");
return super.processValidate(request, response, form, mapping);
}
else {
log.info("The request didn't ask for Controller Form Validation");
return true;
}
}
sacou?
o controller só vai chamar o validate (seja lá como for sua validacao) se vc passar o parametro validate=true na uri.
se ficou confuso de uma lida em:
http://www.javaworld.com/javaworld/jw-09-2004/jw-0913-struts.html