ADF: Cloning personalizations between users – read and write MDS Customization documents
In a recent post I wrote how wonderful the ADF support for user level customizations or personalizations is, and then I went on to explain how the user can be enabled to remove her own personalizations (http://technology.amis.nl/2012/09/27/adf-undo-the-users-page-personalizations-query-and-manipulate-mds/). This article a sequel to that story. It will introduce the capability for one user to clone the personalizations from another user. This means at the background that the document that contains the customizations for a page for the ‘source user’ is read and a new document with the exact same contents is written for the ‘target user’ who will then have personalizations that are at that time exactly the same as those of the source user. There is no link between the two documents – they are both on their own. Any pre-existing personalizations for the target user are lost in this process.
Note: I do not talk about the privileges that you want to define in order to not have anyone copying from just anyone else. Also note that I discuss cloning the personalizations for a single page only. Copying all personalizations from one user to another however is a very simple extension of what is discussed below.
The steps for implementing this clone capability in an application that is already personalization enabled are remarkably simple.
The starting point is user SKING who has applied a number of personalizations to the following page:
Alexander Hunold saw the page when his colleague Steven King was working with it, and he thought that amazing! Those superb personalizations had turned the page into a beauty, easy to use and addictive to look at. So Alexander wants his page to look the same as SKING’s. He uses the cloning mechanism:
and is informed:
Note: since both users have their own copy, any additional personalization made by one of them is invisible to the other. At any time though they can again close each other’s personalizations.
Using the groundwork described in the previous article – http://technology.amis.nl/2012/09/27/adf-undo-the-users-page-personalizations-query-and-manipulate-mds/ – it is not a lot of work to implement the cloning. It primarily requires details on the MDS API functionality – by and large found here: http://idmclub.wikidot.com/metadata-store.
In the page itself, I have introduced an inputText and a slightly differently configured commandLink:
The class MDSCoordinator.
IDMClub Wiki on accessing the MDS API: http://idmclub.wikidot.com/metadata-store
Andreas Koop – ADF: MDS power user layer and “How to control MDS customizations at runtime” – http://multikoop.blogspot.com/2012/01/adf-mds-power-user-layer-and-to-control.html
- ADF: undo the user’s page personalizations – query and manipulate MDS
- Personalizations in CRM foundation
- ADF BC: How to customize the RowImpl class for an Entity Object as site level customization
- Did we spoil the end user? Building Customization and Personalization into JSF applications (NLJUG-JSpring)
- Intercepting user customization – such as column reordering in tables – in ADF 11g change persistence
- Automatic deployment .ear file to Oracle Application Server 10.1.3 (OAS) with Ant tasks
- ADF Academy launched- interactive, entertaining and educational
- ADF Mobile : Oracle eCourse available
- ADF: (Automatic) Partial Page Rendering across Taskflows
- ADF client-side architecture – Select All
- ADF DVT: Analyzing Financial Position of the European Football (Soccer) Leagues using Treemap
- ADF DVT – Scaling TreeMap components for comparisons across masters and categories
- ADF DVT: Using the Tree Map visualization component – to compare relative sizes and distributions
- ADF DVT: Using the Timeline component to visualize the recent history of an RSS feed
- ADF: (re-)Introducing Contextual Events in several simple steps