[ 
https://issues.apache.org/jira/browse/MYFACES-3460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16667169#comment-16667169
 ] 

Werner Punz commented on MYFACES-3460:
--------------------------------------

I guess we can close it. However I am not sure how Mojarra behaves in this area 
atm. The workaround is in the  comments.

But in the end, when we run into a spec gray area which is not specified, I 
think both implementations should behave the same. So if Mojarra takes the 
onSubmit into consideration by now we have to take it into consideration as 
well). 

But I am not very eager to fix this on our own here, because if we do, we might 
break an awful lot of existing 2.x apps.

> onsubmit of form not executed for ajax commands
> -----------------------------------------------
>
>                 Key: MYFACES-3460
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3460
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.0.8, 2.1.5
>         Environment: Tomcat 6.0.32, Facelets
>            Reporter: Michael Heinen
>            Assignee: Werner Punz
>            Priority: Major
>
> During the migration from JSF 1.2 to 2.1 I noticed that the onsubmit 
> attribute of forms is not executed for ajax links.
> Sample:
> <html xmlns="http://www.w3.org/1999/xhtml";
>       xmlns:ui="http://java.sun.com/jsf/facelets";
>       xmlns:h="http://java.sun.com/jsf/html";
>       xmlns:f="http://java.sun.com/jsf/core";>
> <ui:composition>
> <h:form id="myform" onsubmit="alert('submitted')" >
> <h:outputText id="oldCounter" value="oldCounter: 
> #{MyController.counter}"/><br/>
> <h:outputText id="newCounter" value="newCounter: 
> #{MyController.counter}"/><br/>
> <h:commandButton value="AjaxButton" actionListener="#{MyController.increase}" 
> >
> <f:ajax render="newCounter" execute="@this"/>
> </h:commandButton><br/>
> <h:commandButton value="Button" actionListener="#{MyController.increase}"/>
> </h:form>
> </ui:composition>
> </html>
> @ManagedBean(name = "MyController")
> @SessionScoped
> public class MyController{
>   private int counter = 1;
>   public int getCounter() {
>     return counter;
>   }
>   public void increase(ActionEvent ae) {
>     counter++;
>   }
> }
> This is also not working with mojarra 2.1.6 and 2.0.8.
> I used the onsbumit with JSF 1.2 in order to lock the screen and prevent 
> double submits.
> Now I do not see any working alternative in JSF 2.1



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to