Very often we need to provide the same functionality in various places in our ADF application.Quite common example could be a confirmation dialog which needs to be displayed after pressing some buttons (e.g. for deleting rows in a table). Of course most of us know the recipe for that: af:button + af:popup + af:showPopupBehavior + backing bean method. In order to simplify our lives it would be nice to wrap those pieces in something which we could simply drop on the page once and configure only the necessary parts. That's the use case for ADF Declarative Components feature.
I have created a simple example (using the latest and greatest ADF 12c) of how to use declarative components to provide a new composite button with confirmation dialog.