This is the third part of my "WebCenter for ADF Developer" series of posts (see post 1 and post 2).
This entry highlights why this product/features are called WebCenter PORTAL - with this set of WebCenter capabilities your ADF application gets a set of end-user customization capabilities that blur the line between a "regular" application and what used to be one of the core value propositions of traditional portals. Once you start using this capability your end user will be able to create new pages in their applications and add content to those pages at runtime.
As you'll see in the demo, this involve exposing regular ADF taskflows through the WebCenter resource catalogs, and then using the WebCenter Portal composer tags and runtime capabilities to add and customize pages at runtime.
One thing that probably should have gone into the demo also is showing how to enable this dynamic page editing on existing ADF page - to do that you can use the WebCenter JSF component called pe:pageCustomizable and in it put a cust:panelCustomizable component. You can see this if you look at the source of the home.jspx page that comes with your WebCenter Portal application template.
So at the end of the day you can create a page that has this type of structure:
<pe:pageCustomizable id="pageCustomizable1">
<cust:panelCustomizable id="panelCustomizable1" layout="scroll"/>
<f:facet name="editor">
<pe:pageEditorPanel id="pep1"/>
</f:facet>
</pe:pageCustomizable>
Then when you press the magic keyboard combination ctrl+shift+E your page will switch into the runtime editing mode. (or you can add a button that will switch to that editing mode by adding the pe:changeModeButton component to your page.)