You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by "Mark R. Diggory" <md...@latte.harvard.edu> on 2004/06/23 19:24:20 UTC
Please IGNORE, This post is to the wrong list (was Re: saveErrors...)
Mark R. Diggory wrote:
> I was looking at the code for Action.saveErrors(...) and was think
> this is a little inflexible when it comes to error and message
> management:
>
>> protected void saveErrors(HttpServletRequest request,
>> ActionMessages errors) {
>>
>> // Remove any error messages attribute if none are required
>> if ((errors == null) || errors.isEmpty()) {
>> request.removeAttribute(Globals.ERROR_KEY);
>> return;
>> }
>>
>> // Save the error messages we need
>> request.setAttribute(Globals.ERROR_KEY, errors);
>>
>> }
>
>
>
> If I have errors occur in different locations, rather than returning
> ActionMessages objects and having to merge them myself prior to
> calling "saveErrors" or "saveMessages", why not have this be more like
> "addError" or "addMessage" at the action level so that the user
> doesn't need to maintain the "ActionMessages" object themselves? As
> well they can call saveError almost anywhere in the code without
> overwriting the existing errors object, which is "saveErrors" existing
> behavior.
>
>> ...
>>
>> saveError(request,"foo", new ActionMessage("foo.bar"));
>>
>> ...
>>
>> protected void saveError(HttpServletRequest request, String key,
>> ActionMessage error) {
>>
>> ActionMessages errors = (ActionMessages)
>> request.removeAttribute(Globals.ERROR_KEY);
>>
>> // Remove any error messages attribute if none are required
>> if ((errors == null)) {
>> errors = new ActionMessages();
>> }
>>
>> errors.add(key, error);
>>
>> request.setAttribute(Globals.ERROR_KEY, errors);
>>
>> }
>
>
> -Mark Diggory