[
https://issues.apache.org/jira/browse/TOMAHAWK-1306?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Leonardo Uribe updated TOMAHAWK-1306:
-------------------------------------
Resolution: Fixed
Status: Resolved (was: Patch Available)
thanks to Paul Rivera for provide us with this patch
> Focus2 postback problem
> -----------------------
>
> Key: TOMAHAWK-1306
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-1306
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: New Component
> Affects Versions: 1.1.7-SNAPSHOT
> Environment: myfaces-1.2.4-SNAPSHOT
> tomahawk-sandbox12-1.1.7-SNAPSHOT
> tomahawk12-1.1.7-SNAPSHOT
> Tomcat 6.0.16
> Reporter: Paul Rivera
> Fix For: 1.1.8-SNAPSHOT
>
> Attachments: focus2.HtmlFocusRenderer-2.patch,
> focus2.HtmlFocusRenderer.patch, webapp-files.rar
>
>
> Below are the main use cases for Focus2:
> 1) if you first get to a page, the _first_ input field should be highlighted
> 2) if you post-back to a page and there is a validation-error, the
> first field with a validation error should be highlighted
> 3) if you change a value on a form (e.g. a drop-down) and this
> changing a value initiates a postback, you will want the next field
> highlighted after the field that initiated the post-back to be
> highlighted
> Here are some bugs I've found:
> I) Focus2 cannot distinguish a newly created view (user first enters the
> webpage) from a postback (user does a submit and the same page gets loaded).
> See the attached testValueAttr.jsp to replicate the bug.
> What happens is that if you have the following tag in your code:
> <s:focus2 value="mainForm:email"/>
> Focus2 will give focus to the component succeeding mainForm:email. In the
> case of testValueAttr.jsp, it is mainForm:country. In the
> focus2.HtmlFocusRenderer.getFocusForId(), it always assumes that it is a
> postback.
> II) Focus2.HtmlFocusRenderer does not retrieve the submitted value in its
> decode() method. In the current implementation, HtmlFocusRenderer calls
> super.decode(context, component). I've checked and found out that after this
> line, the _submittedValue of the component is still null. _submittedValue
> should be the clientId of the currently focused input field maintained in a
> hidden field in your user's browser and updated by javascript for each focus
> event (See focus2.HtmlFocusRenderer.writeUpdateFocusScript()). Please see
> attached testPostBack.jsp to replicate the bug. Use case 3 fails here.
> The patch will fix both these bugs.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.