Action Class

You can use ApexPages.Action to create an action method that you can use in a Visualforce custom controller or controller extension.

Namespace

ApexPages

Usage

For example, you could create a saveOver method on a controller extension that performs a custom save.

Instantiation

The following code snippet illustrates how to instantiate a new ApexPages.Action object that uses the save action:
ApexPages.Action saveAction = new ApexPages.Action('{!save}');

Example

In the following example, when the user updates or creates a new Account and clicks the Save button, in addition to the account being updated or created, the system writes a message to the system debug log. This example extends the standard controller for Account.

The following is the controller extension.
public class pageCon{
    public PageReference RedirectToStep2(){
        // ...
        // ...
        return Page.Step2;
    }
}
The following is the Visualforce markup for a page that uses the above controller extension.
<apex:component>
    <apex:attribute name="actionToInvoke" type="ApexPages.Action" ... />
    ...
    <apex:commandButton value="Perform Controller Action" action="{!actionToInvoke}"/>
</apex:component>

<apex:page controller="pageCon">
    ...
    <c:myComp actionToInvoke="{!RedirectToStep2}"/>
</apex:page>
For information on the debug log, see “Viewing Debug Logs” in the Salesforce online help.
Previous
Next