Tuesday, February 21, 2012

ADF Dynamic Regions

What are they?
As per the fusion docs, "An ADF dynamic region is an ADF region where the task flow binding dynamically determines the value of its taskFlowId attribute at runtime. This allows the Fusion web application to determine which bounded task flow to execute within the ADF dynamic region based on the result of evaluation of the task flow binding's taskFlowId attribute".

Thus, a page renders a different task flow page fragments in response to the command component button that the end user clicks.

Why Dynamic Regions?
I happened to come across and make use of ADF Dynamic Regions because of a peculiar issue that I faced. I was to make use of a taskflow (that belonged to a different workspace) as a region within my workspace page-fragment. This particular region would not behave as expected at runtime on the said page-fragment (pop-up would not render on click of the commandImageLink) but would behave normally on all others. The difference between this page-fragment and others was that, it had two different bounded taskflows with page fragments that would show up conditionally on click of a commandImageLink. The parent page-fragment was not making use of dynamic ADF regions initially. Once we switched to make use of ADF Dynamic regions to show the containing taskflow regions conditionally at runtime, our issue was solved!!

No comments: