You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Rene O (JIRA)" <de...@myfaces.apache.org> on 2014/05/16 13:19:14 UTC
[jira] [Commented] (MYFACES-3892) Create a option to execute
BeanValidation before JSF-Validation
[ https://issues.apache.org/jira/browse/MYFACES-3892?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13999644#comment-13999644 ]
Rene O commented on MYFACES-3892:
---------------------------------
Your solution works, but generally mixing of Bean-Validation and JSF-Validation leads to another problem:
{code}
<h:inputText id="myfield" value="#{myBean.myField}">
<f:validateBean />
<f:validateRegex pattern="[A-Z]" />
</h:inputText>
<h:message for="myfield" />
{code}
{code}
MyBean {
@NotNull
@Size(min=6,max=10)
String myField;
...
}
{code}
=> user input: 1234
If beanvalidation fails and the regex fails, then there occurs a warning from the regexvalidator, because messagefield is already used by beanvalidationmessage:
GUI:
{noformat}
muss zwischen 6 und 10 liegen
{noformat}
Log:
{noformat}
Warnung: There are some unhandled FacesMessages, this means not every FacesMessage had a chance to be rendered.
These unhandled FacesMessages are:
- myField: Der eingegebene Wert ([A-Z]) ist nicht korrekt.
{noformat}
Can I prevent this warning?
> Create a option to execute BeanValidation before JSF-Validation
> ---------------------------------------------------------------
>
> Key: MYFACES-3892
> URL: https://issues.apache.org/jira/browse/MYFACES-3892
> Project: MyFaces Core
> Issue Type: Improvement
> Affects Versions: 2.2.3
> Reporter: Rene O
>
> As stated in this answer: http://stackoverflow.com/a/19835645 BeanValidation is executed after JSF-Validation.
> But it would be very useful to have a way to change this behaviour.
> Now you can't decide within jsf-validator wether a component is valid or not in terms of BeanValidation
> {code}
> //My JSF-Validator
> //...
> UIInput input = (UIInput) component;
> if (!input.isValid()) {
> return;
> }
> //...my own jsf-validation rules...
> //...
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)