myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Lucy (JIRA)" <...@myfaces.apache.org>
Subject [jira] [Updated] (MYFACES-4051) FacesMessage.Severity always set to ERROR after ValidatorException
Date Wed, 22 Jun 2016 16:32:58 GMT

     [ https://issues.apache.org/jira/browse/MYFACES-4051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Bill Lucy updated MYFACES-4051:
-------------------------------
       Resolution: Fixed
         Assignee: Bill Lucy
    Fix Version/s: 2.2.11
                   2.1.19
                   2.0.25
                   1.2.13
           Status: Resolved  (was: Patch Available)

> FacesMessage.Severity always set to ERROR after ValidatorException
> ------------------------------------------------------------------
>
>                 Key: MYFACES-4051
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4051
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.2.10
>         Environment: Tomcat, WebSphere Liberty
>            Reporter: Bill Lucy
>            Assignee: Bill Lucy
>             Fix For: 1.2.13, 2.0.25, 2.1.19, 2.2.11
>
>         Attachments: MYFACES-4051.patch
>
>
> The severity of messages is always set (overwritten) to SEVERITY_ERROR when a ValidatorException
is thrown during validation.  In org.apache.myfaces.view.facelets.compiler._ComponentUtils
I see that we always call 
> facesMessage.setSeverity(FacesMessage.SEVERITY_ERROR);
> when processing a ValidatorException.  This might make sense if we're assuming that all
faces messages default to some other severity, but it doesn't seem right to me that we're
overwriting user-set message severities.  For example, given the following custom validator:
> 	public void validate(FacesContext context, UIComponent component, Object value) {
> 		if (value == null) {
> 			List<FacesMessage> messageList = new ArrayList<>();
> 			messageList.add(new FacesMessage(FacesMessage.SEVERITY_INFO,
> 				"ValidatorException#SEVERITY_INFO", "ValidatorException#SEVERITY_INFO"));
> 			throw new ValidatorException(messageList);
> 		}
> 	}
> The severity of the custom message will always be set to SEVERITY.ERROR.  I don't see
much guidance in the spec on this, but Mojarra behaves differently - it does not overwrite
custom FacesMessage severities.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message