[
https://issues.apache.org/jira/browse/MYFACES-4533?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17679058#comment-17679058
]
Werner Punz edited comment on MYFACES-4533 at 1/20/23 8:54 AM:
---------------------------------------------------------------
Thanks for the analysis, yes the postback is slightly different, the
specification is quite unclear on this, in one section of the jsdoc it talks
about sending the raw jakarta.faces.ViewState always and in a later section
talks about having to prefix every parameter you send down in the
namingContainer case.
I thought to have sent the prefixed one and the non prefixed one for now.
The best bet here is to follow Mojarras lead and check what they do in this
case.
as for the execute, having sent the button id additionally is correct, because
execute always has to include the originating element. (But I have to double
check the jsdoc for that, I remember it being there)
was (Author: werpu):
Thanks for the analysis, yes the postback is slightly different, the
specification is quite unclear on this, in one section of the jsdoc it talks
about sending the raw jakarta.faces.ViewState always and in a later section
talks about having to prefix every parameter you send down in the
namingContainer case.
I thought to have sent the prefixed one and the non prefixed one for now.
The best bet here is to follow Mojarras lead and check what they do in this
case.
as for the execute, having sent the button id is correct, because execute
originally was sent as @this which means the originating component, which in
this case was/is the button.
I have to check whether not sending the button id still exists in the old
codebase, if yes then it is a bug!
{code:xml}
<h:commandButton id="button" value="submit form and navigate to
spec790WithNamespacedView.xhtml via Ajax" action="spec790WithNamespacedView">
<f:ajax execute="@form" render="@this" />
</h:commandButton>
{code}
Here you can see the navigational trigger with the @this
> TCK: Spec 790: Viewstate input element's name attribute should be prefixed
> with naming container id
> -----------------------------------------------------------------------------------------------------
>
> Key: MYFACES-4533
> URL: https://issues.apache.org/jira/browse/MYFACES-4533
> Project: MyFaces Core
> Issue Type: Bug
> Affects Versions: 4.0.0-RC2
> Reporter: Volodymyr Siedlecki
> Assignee: Werner Punz
> Priority: Major
> Attachments: image-2023-01-19-08-44-48-874.png,
> image-2023-01-19-08-48-12-961.png, namespacedView.war
>
>
> Failing Line:
> https://github.com/jakartaee/faces/blob/master/tck/faces23/namespacedView/src/test/java/ee/jakarta/tck/faces/test/javaee8/namespacedView/Spec790WithNamespacedViewIT.java#L15
> 5
> Generated Viewstate:
> {code:java}
> <input type="hidden" name="jakarta.faces.ViewState"
> id="j_id__v_0:jakarta.faces.ViewState:1"
> value="NzVhMDlkOGYwNjY1ZWZkODAwMDAwMDAy" autocomplete="off">
> {code}
> The test expects the name attribute to be prefixed with `j_id__v_0`. My
> understanding is this should only apply when the view root is an instance of
> a NamingContainer.
> The test app's faces-config has the following configuration:
> https://github.com/jakartaee/faces/blob/master/tck/faces23/namespacedView/src/main/webapp/WEB-INF/faces-config.xml#L25-L28
--
This message was sent by Atlassian Jira
(v8.20.10#820010)