You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "John Redwood (JIRA)" <de...@myfaces.apache.org> on 2014/04/10 08:02:20 UTC

[jira] [Commented] (MYFACES-3574) Update of 'javax.faces.ViewState' input elements fails

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

John Redwood commented on MYFACES-3574:
---------------------------------------

Hi Werner, Just giving you an update - thanks for your help. This turns out it wasn't the issue.

The issue was that PrimeFaces wasn't finding the ViewState in the children dom of the form object. This is because some clever fellar who built WCEM 2.0 (SAP) decided that in the form.begin.vm file there should be a <div>  </div> with the following comment: ## The div is required because a form may only contain block elements and input is not a block element

Now aside from the fact it makes absolutely NO SENSE... removing this div fixed all the issues. The viewstate was inside a child div not a child itself in the form.

Thankyou for your help.

Cheers
John

> Update of 'javax.faces.ViewState' input elements fails
> ------------------------------------------------------
>
>                 Key: MYFACES-3574
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3574
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: General
>    Affects Versions: 2.1.7, 2.1.8
>         Environment: Internet Explorer 7
>            Reporter: Mircea Toma
>            Assignee: Leonardo Uribe
>             Fix For: 2.0.15, 2.1.9
>
>         Attachments: MYFACES-3574.patch
>
>
> The issue resides in the JS code that is responsible for updating javax.faces.ViewState key in the hidden input elements. 
> In IE7 during the second update the lookup for the 'javax.faces.ViewState' named input element fails. The element[name] syntax is used for the lookup which is known to fail for elements with complex names (such as 'javax.faces.ViewState'). 
> When the lookup fails to find the input element a second input element is created which will contain the new javax.faces.ViewState value. The next submit will send two 'javax.faces.ViewState' parameters but only the first one (the oldest) is read by the server state manager . This old key is not known to the server anymore and  this causes a ViewExpired exception to be thrown on the server.



--
This message was sent by Atlassian JIRA
(v6.2#6252)