For most of the scenarios, ADFm Error Handlers shows the message. But in case when some exception occurs in managedBean, it can be caught and reported to ADFm Error Handler using below code.
BindingContext bctx = BindingContext.getCurrent(); ((DCBindingContainer)bctx.getCurrentBindingsEntry()).reportException(ex);
Note : Using the ADF model error handling for displaying exceptions thrown in managed beans require the current ADF Faces page to have an associated PageDef file (which is the case if the page or view contains ADF bound components).
Sample App is uploaded here. Following scenarios are covered :
Scenario Description | Button Text in Sample App | Requires Explicit Handling to show messaage to User | |
1 | Drag and Drop AM Method on Page as command Button | throwJboExceptionFromAM | No |
2 | Call AM method in Bean method through bindings | Call throwJboExceptionFromAM in Bean through Bindings | No. By default, all exception are handled by ADFm Error Handler when calling AMMethod through bindings. When you check for exception in operationBinding and report it expliclity .. It is basically duplicating the message |
3 | throw an exception in ActionListener | ThrowingExceptionInActionListener | Yes. See the button in section Handled and it's actionListener. How the exception is reported . |
Enjoy !!!