Good articals about User Customization with and without MDS by John Stegeman.
few key point pulled out from john links
Oracle MDS stores customization and personalization information in a
repository. The repository can either be stored in a database or in a
file-based store; for reasons of scalability and reliability, as well
other reasons, I strongly recommend using a database for storing the
MDS repository (the next article in this series will show you how to
configure the repository). For the develop/test/debug cycle, the Oracle
WebLogic Server integrated with Oracle JDeveloper 11g
provides a local MDS repository, so you do not need to set up a separate one for development purposes.
- Configure the Oracle JDeveloper 11g project to allow end user customizations.
- Configure the Oracle ADF application descriptor with the Oracle ADF Faces components that should enable customization.
- For saving user queries in the af:query component, configure a metadata namespace (as documented in the Oracle JDeveloper 11g release notes - if you are using Oracle JDeveloper 11g Version 184.108.40.206, this is not required).
- For deployment, you must create and register an Oracle MDS repository (this step is covered in a subsequent article).
Enabling security is must for MDS persistence also there is no need of MDS registration if app runs in jdev.
- Your Oracle ADF Faces pages must be stored in XML format (.jspx),
and the user-customizable components in the page must each have an ID
specified. These requirements are due to the way in which Oracle MDS
records customizations made by the user.
application must have security enabled. This requirement is so that
Oracle MDS has an identity against which to store user customizations
Implicitly customizable ADF Components.
|panelBoxshowDetail showDetailHeader showDetailItem||disclosed|
|showDetailItem (used in a panelAccordion component)||flex|
|showDetailItem (used in a panelAccordion component)||inflexibleHeight|
|activeCommandToolbar Button commandButton commandImageLink commandLink commandMenuItem commandNavigationItem commandToolbarButton||windowHeight|
|activeCommandToolbar Button commandButton commandImageLink commandLink commandMenuItem commandNavigationItem commandToolbarButton||windowWidth|
You can also control the persistence and non persistence to MDS using Persist and DonPersist setting to true or false in property inspector of selected component.
Fusion Schema comes up with predefined MDS schemas, when you deploy app to standalone wls by default it uses mds-ApplicationMDSDB repository, you can override this by creating your own MDS schema using RCU as explained in below link and selecting custom repository name created by you in MDS wizard during deployment.
However MDS Registration is must when you deploy application to standalone weblogic Server. Below article explain how to register the same.
I have registered MDS using below command run from wlst prompt. Key point here is to run wlst.sh from SOA install directory (..../mw_home_standalone/Oracle_SOA1/common/bin) to see registerMetadataDBRepository command working, however the wlst.sh present in .../domain/common/bin does not show up registerMetadataDBRepository commands. Bottom line is to ensure SOA is installed just to make use of its wlst.sh for registration.