While building applications, sometimes you may need to enable undo/redo functionality for your pages. If you use ADF BC for implementing the business services, then one possibility is to leverage the 'Middle-Tier Savepoints' to rollback to a certain point within a transaction instead of rolling back the entire transaction. Below shown APIs are your friends here. ApplicationModuleImpl::passivateStateForUndo(java.lang.String id, byte[] clientData, int flags) ApplicationModuleImpl::activateStateForUndo(java.lang.String id,int flags) More details can be found in Fusion Developer's Guide - 40.9 Using State Management for Middle-Tier Savepoints . You may need to note down a couple of point here. 1. This approach saves only ADF Model state(in other words , this wouldn't help you to save navigation state/manged bean/memory scope scope variable) 2. Saved state(snapshot) do not survive past duration of transaction Adding Save Points to a Task Flow Please note that Ora...