Follow by Email

Wednesday, 10 September 2014

Dynamic (parameterize) model level validation using message token -Oracle ADF

Hello all
This post falls under ADF Basics category (about a little trick in model layer) but about a common development requirement
How can we create dynamic ADF BC validation ? means it takes a parameter at run time and append it to validation message

Read previous post on model level validation-
Conditional Execution of Model (EO) level Validation- Oracle ADF
ViewObject Validation rules for transient attributes (Model level validation in ADF)

In this post I am using Departments table of oracle HR Schema

  • First step is same , prepare model (EO,VO and AM) using Departments table

  • Creating a business rule that DepartmentName can not be duplicate, for this created a alternate key in EntityObject 

  • Nnow creating unique key business rule for this alternate key and message that appears on validation failure (this is how we apply EO level validations)

  • Run AM and check in BC4J tester, create a new row and on entering duplicate DepartmentName this validation message appears -"Duplicate Department Name"

  • now my requirement is this message should be like - Duplicate Department Name <Administration> , so for this i have to pass parameter in message that shows entered DepartmentName on run-time. ADF provides built in feature to pass tokens in message and on run time it is replace with groovy expression value

  •  On running see desired output

  • to pass more than one parameter just add another token and set groovy for it, see the screens

Thanks - Happy Learning :)

No comments :

Post a Comment