[
https://issues.apache.org/jira/browse/MYFACES-2717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12867612#action_12867612
]
Jakob Korherr commented on MYFACES-2717:
----------------------------------------
The solution to this problem is to move the code that removes
STANDARD_JSF_AJAX_LIBRARY_LOADED from the FacesContext's attribute map from
FaceletViewDeclarationLanguage.setFilledView() to
FaceletViewDeclarationLanguage.buildView(), because when the code was created
(in revision 820175), setFilledView() was called every time in buildView() and
now it is only called under special conditions. However removing of
STANDARD_JSF_AJAX_LIBRARY_LOADED should happen anyway.
> c:if and c:forEach cause jsf.js not beeing rendered when navigating to
> another view
> -----------------------------------------------------------------------------------
>
> Key: MYFACES-2717
> URL: https://issues.apache.org/jira/browse/MYFACES-2717
> Project: MyFaces Core
> Issue Type: Bug
> Components: JSR-314
> Affects Versions: 2.0.0
> Reporter: Jakob Korherr
> Assignee: Jakob Korherr
>
> If you have two pages using <f:ajax>, both of the pages need jsf.js and
> furthermore it should be rendered in <h:head>. If you navigate from the first
> page to the second one via an action method and you do not use <c:if> or
> <c:forEach> on the first page, everything works fine (jsf.js is rendered in
> the head of the second page). However if you use <c:if> or <c:forEach> on the
> first page, FaceletViewDeclarationLanguage.setFilledView() will never be
> called and thus STANDARD_JSF_AJAX_LIBRARY_LOADED will not be removed from the
> FacesContext's attribute map and this means that jsf.js will NOT be rendered
> in the head of the second page, because the VDL thinks it has already been
> rendered.
> However it is not a complete loss of functionality since MYFACES-2687
> introduced code to render jsf.js inline, but it still is a bug.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.