[richfaces-issues] [JBoss JIRA] (RF-13127) onvalid and oninvalide pass wrong element when using rich:element with String field

Louis Parisi (JIRA) jira-events at lists.jboss.org
Thu Aug 22 12:29:27 EDT 2013


    [ https://issues.jboss.org/browse/RF-13127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12798574#comment-12798574 ] 

Louis Parisi commented on RF-13127:
-----------------------------------

I attached a project to demonstrate the issue.  Unzip and run project with mvn jetty:run.  Go to http://localhost:8080/webtemplate.  Log in with credentials user/user.  Go to the Table Edit page from the toolbar.  Edit fields in rows after the first row.  The string fields intermittently do not return the correct element.  The BigDecimal fields seem to always return the correct element.  I have an alert that displays which element was passed by the oninvalid and onvalid tags.
                
> onvalid and oninvalide pass wrong element when using rich:element with String field
> -----------------------------------------------------------------------------------
>
>                 Key: RF-13127
>                 URL: https://issues.jboss.org/browse/RF-13127
>             Project: RichFaces
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: component-validators
>    Affects Versions: 4.3.3
>            Reporter: Louis Parisi
>              Labels: waiting_on_user
>         Attachments: JSFTemplate.zip
>
>
> I have a bean iterated in a datatable.  Using the rich:validator on fields in the bean I am executing javascript when a field is validated and apply styling based on valid or invalid state.  The code below returns the correct element when the underlying field is a BigDecimal but always returns the element from row zero when the field is a String.  If I just reference a String vs. BigDecimal and display the element passed to the javascript I get form:myTable:4:myField for a BigDecimal field and always form:myTable:0:myField no matter the row for a String field.
> {code}
> <h:inputText value="#\{myBean.myField}" id="myField">              
>   <rich:validator oninvalid="valueModifiedAndError(#\{rich:element('myField')})"
>                   onvalid="valueModified(#\{rich:element('myField')})"/>                      
> </h:inputText>
> {code}
> Some other tests I did while trying to debug are:
> * I passed the rowKeyVar to a javascript method in the onvalid event and it passed the correct row for a BigDecimal and always zero for a String field.
> * The oncomplete event of the validator does not seem to fire for a String field but does for a BigDecimal field.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the richfaces-issues mailing list