myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul Nicolucci (JIRA)" <...@myfaces.apache.org>
Subject [jira] [Updated] (MYFACES-4178) Entering JSF Flow via ViewAction does not add required query params
Date Sat, 27 Jan 2018 20:28:00 GMT

     [ https://issues.apache.org/jira/browse/MYFACES-4178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Paul Nicolucci updated MYFACES-4178:
------------------------------------
    Resolution: Fixed
        Status: Resolved  (was: Patch Available)

> Entering JSF Flow via ViewAction does not add required query params
> -------------------------------------------------------------------
>
>                 Key: MYFACES-4178
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4178
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.3.0-beta
>            Reporter: Jay Sartoris
>            Assignee: Paul Nicolucci
>            Priority: Minor
>             Fix For: 2.3.0
>
>         Attachments: JSF23ViewActionFlowEntry.war, MYFACES-4178.patch
>
>
> In Spec Issue 1403:  https://github.com/javaee/javaserverfaces-spec/issues/1403
> It states that:
> -----------
> Specifically, the
> FlowHandler.TO_FLOW_DOCUMENT_ID_REQUEST_PARAM_NAME and the
> FlowHandler.FLOW_ID_REQUEST_PARAM_NAME must be added to the query string
> when entering the flow in this way.
> -----------
> In MyFaces 2.3 these parameters are not added to the query string when entering the flow
from the viewAction.  They are added when using Mojarra JSF 2.3.
> I've also tested with the MyFaces 12/02/2017 snapshot and I still see the same behavior.
> *
> The JSF 2.3 Spec says this:
> Section 7.4.2 regarding the default navigation handler implementation*
> {noformat}
> If the <redirect/> element was specified in this <navigation-case>, or this
invocation of
> handleNavigation() was due to a UIViewAction broadcast event where the new viewId is
different from
> the current viewId, resolve the <to-view-id> to a view identifier, using the algorithm
in Section 7.4.2.1
> “Requirements for Explicit Navigation in Faces Flow Call Nodes other than ViewNodes”.
Call
> getRedirectURL() on the ViewHandler, passing the current FacesContext, the <to-view-id>,
any
> name=value parameter pairs specified within <view-param> elements within the <redirect>
element, and
> the value of the include-view-params attribute of the <redirect /> element if present,
false, if not. If
> this navigation is a flow transition (where current flow is not the same as the new flow),
include the relevant flow
> metadata as entries in the parameters.
> If current flow is not null and new flow is null, include the following entries:
> FlowHandler.TO_FLOW_DOCUMENT_ID_REQUEST_PARAM_NAME: FlowHandler.NULL_FLOW
> FlowHandler.FLOW_ID_REQUEST_PARAM_NAME: “” (the empty string)
> If current flow is null and new flow is not null, include the following entries:
> FlowHandler.TO_FLOW_DOCUMENT_ID_REQUEST_PARAM_NAME: The to flow document id
> FlowHandler.FLOW_ID_REQUEST_PARAM_NAME: the flow id for the flow that is the destination
of the
> transition.
> If the parameters map has entries for either of these keys, both of the entries must
be replaced with the new
> values. This allows the call to FlowHandler.clientWindowTransition() to perform correctly
when
> the GET request after the redirect happens.
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message