Hola espero poder ayudarte
Los ActionErrors y ActionMessages son instrucciones que a final de cuentas se toman como mensajes que pueden ser visualizados en las paginas JSP estos mensajes puede ser manipulados por el usuario o descritos en un archivo ApplicationResources.properties, este archivo no solo se ocupa para esto, pero esa es otra historia jeje
Ahora mira yo en mis actions hago algo como esto.
Código PHP:
ActionMessages messages = new ActionMessages();
fwd=errorMessage(mapping,fwd,messages,request,target,"exception",
"error.exception.exception1");
Donde errorMessage es una función que invente. fwd es una variable de tipo forward y target contiene el nombre de un forward dentro del struts-config.xml, exception es el nombre de cómo se va allamar al mensaje en el JSP y error.exception.exception1 es el nombre del error en el archivo properties.
Código PHP:
public ActionForward errorMessage(ActionMapping mapping,ActionForward fwd,
ActionMessages messages,HttpServletRequest
request,String target, String nameMsg, String msg){
ActionMessage message;
message = new ActionMessage(msg);
messages.add(nameMsg,message);
saveMessages(request,messages);
fwd=mapping.findForward(target);
return fwd;
}
}
Ahora cada vez que entra a esta función interactúa con el ApplicationResources.properties que contiene algo así
Código PHP:
# Optional header and footer for <errors/> tag.
#errors.header=<ul>
#errors.footer=</ul>
error.postalcode.required=Codigo Postal No esta
error.postalcode.invalid=Codigo Postal Invalido
error.exception.exception1=No se pudo obtener el requerimiento
Ya en el JSP hago algo así.
Código PHP:
<html:messages message="true" id="postalcode2">
<bean:write name="postalcode2" />
</html:messages>
Si lo que deseas es que el error se valide en el formulario puedes hacer esto, en el metodo validate de tu clase form.
Código PHP:
public ActionErrors validate(ActionMapping actionMapping, HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if ((postalCode == null) || (postalCode.length() < 1))
errors.add("postalcode1", new ActionError("error.postalcode.required"));
return errors;
}
Y llamarlo en el JSP así.
Código PHP:
<html:errors property="postalcode1" /></td>