myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Werner Punz (JIRA)" <...@myfaces.apache.org>
Subject [jira] [Comment Edited] (MYFACES-4160) ViewState not written for Ajax request
Date Sun, 08 Oct 2017 18:27:01 GMT

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

Werner Punz edited comment on MYFACES-4160 at 10/8/17 6:26 PM:
---------------------------------------------------------------

Ok I rechecked the docs, and I think the spec was not properly updated. I know there was a
long thread discussing the solution and I personally think the correct solution was to update
the issuing form and all forms ander a view root.

Which also is basically what is stated on Tijms Weblog.

However the jsdocs state:

*f the javax.faces.ViewState element could not be found, throw an error.
If the ID of the javax.faces.ViewState element has a <VIEW_ROOT_CONTAINER_CLIENT_ID><SEP>
prefix, where <SEP> is the currently configured UINamingContainer.getSeparatorChar()
and <VIEW_ROOT_CONTAINER_CLIENT_ID> is the return from UIViewRoot.getContainerClientId()
on the view from whence this state originated, then remember it as namespace prefix. This
is needed during encoding of the set of post data arguments.*

Which implemented word by word simply causes some viewstates under a naming container to be
not updated again. Again I state, all forms under one given viewroot must be updated, otherwise
you will simply get old stale broken viewstates. If the stated viewroot element cannot be
found then we do not have multiple viewroots, so the update root then is the body in a html
environment.

As it is Is stated in the jsdocs, which was carried over from the old spec with the broken
issue, render target pattern. The problem I have is, the old java.net issue thread https://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-790
is gone because oracle has pulled it due to the shutdown of java.net. My personal guess is
Mojarra implemented the correct pattern as it was discussed, But the specs or at least the
jsdocs were updated sloppily othwise it would have crawled up again.

 Does anyone know where the JSF issues have been moved? I need to dig up the thread. In the
meanwhile I will implement the solution which is correct in my opinion we will see if the
TCK will fail or not. I will give the google history a shot maybe I can still dig the vital
info out.






was (Author: werpu):
Ok I rechecked the docs, and I think the spec was not properly updated. I know there was a
long thread discussing the solution and I personally think the correct solution was to update
the issuing form and all forms ander a view root.

Which also is basically what is stated on Tijms Weblog.

*f the javax.faces.ViewState element could not be found, throw an error.
If the ID of the javax.faces.ViewState element has a <VIEW_ROOT_CONTAINER_CLIENT_ID><SEP>
prefix, where <SEP> is the currently configured UINamingContainer.getSeparatorChar()
and <VIEW_ROOT_CONTAINER_CLIENT_ID> is the return from UIViewRoot.getContainerClientId()
on the view from whence this state originated, then remember it as namespace prefix. This
is needed during encoding of the set of post data arguments.*

Which implemented word by word simply causes some viewstates under a naming container to be
not updated again. Again I state, all forms under one given viewroot must be updated, otherwise
you will simply get old stale broken viewstates. If the stated viewroot element cannot be
found then we do not have multiple viewroots, so the update root then is the body in a html
environment.

As it is Is stated in the jsdocs, which was carried over from the old spec with the broken
issue, render target pattern. The problem I have is, the old java.net issue thread https://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-790
is gone because oracle has pulled it due to the shutdown of java.net. My personal guess is
Mojarra implemented the correct pattern as it was discussed, But the specs or at least the
jsdocs were updated sloppily othwise it would have crawled up again.

 Does anyone know where the JSF issues have been moved? I need to dig up the thread. In the
meanwhile I will implement the solution which is correct in my opinion we will see if the
TCK will fail or not. I will give the google history a shot maybe I can still dig the vital
info out.





> ViewState not written for Ajax request
> --------------------------------------
>
>                 Key: MYFACES-4160
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4160
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.3.0-beta
>            Reporter: Thomas Andraschko
>            Assignee: Werner Punz
>             Fix For: 2.3.0
>
>
> If you run the application from MYFACES-4156 via mvn jetty:run, the viewStateId isn't
rendered again after the first ajax request.
> Seems like FaceletViewDeclerationLanguage line 1910 should handle that but it skips.
> [~lu4242] Could you please check that?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message