[
https://issues.apache.org/jira/browse/MYFACES-2939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Leonardo Uribe resolved MYFACES-2939.
-------------------------------------
Resolution: Fixed
Fix Version/s: 2.0.3-SNAPSHOT
Assignee: Leonardo Uribe
This is not a myfaces bug, instead PreValidateEvent and PostValidateEvent are
underspecified by jsf 2.0 spec. The issue here:
https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=537
Is marked as fixed, but it is not.
The example reveals it is possible to attach those events at form level, so I
added code that publish this event when the form is being validated.
> f:event type=postValidate does not work
> ---------------------------------------
>
> Key: MYFACES-2939
> URL: https://issues.apache.org/jira/browse/MYFACES-2939
> Project: MyFaces Core
> Issue Type: Bug
> Affects Versions: 2.0.2
> Environment: All
> Reporter: Werner Punz
> Assignee: Leonardo Uribe
> Fix For: 2.0.3-SNAPSHOT
>
>
> From the mailinglist following bug was reported by Nikolai Rychkov
> (I have to add I could reproduce the bug here on my machine as well, even
> with a field being set to required so that validation definitely is called)
> Original Message:
> I try this simple example. But event doesn't be invoked. It looks like
> <f:event type="postValidate"> doesn't work
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml"
> xmlns:f="http://java.sun.com/jsf/core"
> xmlns:h="http://java.sun.com/jsf/html"
> xmlns:ui="http://java.sun.com/jsf/facelets"
> >
> <h:head>
> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
> <title></title>
> </h:head>
> <h:body>
> <h:form id="form">
> <f:event type="postValidate" listener="#{user.validate}"/>
> <h3>Please enter your name and password.</h3>
> <table>
> <tr>
> <td>Name:</td>
> <td><h:inputText id="name" value="#{user.name}"/></td>
> </tr>
> <tr>
> <td>Password:</td>
> <td><h:inputSecret id="password"
> value="#{user.password}"/></td>
> </tr>
> </table>
> <p><h:commandButton id="button" value="Login" action="welcome"/></p>
> </h:form>
> </h:body>
> </html>
> @ManagedBean(name = "user")
> @SessionScoped
> public class UserBean implements Serializable {
> private Logger log = LoggerFactory.getLogger(UserBean.class);
> private String name;
> private String password;
> private static final long serialVersionUID = -7858335225156624734L;
> public String getName() { return name; }
> public void setName(String newValue) { name = newValue; }
> public String getPassword() { return password; }
> public void setPassword(String newValue) { password = newValue;
> }
> public void validate(ComponentSystemEvent e) {
> log.info("========================================");
> }
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.