You need to sign in to do that
Don't have an account?
redirect with action attribute doesn't work
Hello,
I've a site with a wizard in it. When the user goes to the site, i check in the first page if this user is already came. If so, i load the saved state of his wizard and make a redirect to the correct page of the wizard.
To redirect him, i use the action attribute of the page.
<apex:page sidebar="false" showheader="false" controller="Move_North" cache="false" action="{!ad.loadCafState}">
ad is an object created in the controller of the page.
The function loadCafState is looking like:
pageRef = new PageReference('/apex/HR01_Confirm_And_Send'); pageRef.setRedirect(false); return pageRef;
(I don't use /apex/ in my real code, it's just to debug.
With the parameter of setRedirect = true, i move correctly to the page, but i lose all values preloaded. Normal if i refer to the documentation.
With setRedirect = false, the page seems not to be redirected, and doesn't display the css anymore ???
In the documentation, i find "If set to false, the redirect is a server-side forward that preserves the view state if and only if the target page uses the same controller and contains the proper subset of extensions used by the source page"
What is a proper subset of extensions ?
When is executed the method in the action attribute compared to the execution of the controller ?
Thanks for your help
Ced
The "same controller and proper subset of extensions" means that the "controller" must match on each page, and "proper subset of extensions" means you're allowed to remove extensions, but not add them. So long as you meet these requirements, your page will maintain its state when redirecting.
Keep view state:
Lose view state:
Note that when a view state transfers via an internal (server) redirect, the URL will still reference the origin page, but will be running the new page's code.
That's what i have
My first page , where the action is called
And the page (named HR01_Confirm_And_Send ) where the app is redirected is :
So the redirect should work, no ?