Before giving the solution, let me explain my scenario. I
have JSF binding object “internalProfile” which is a list of a class. The
definition of the object is like below.
List<KeyValue> internalProfile=new
ArrayList<KeyValue>();
KeyValue is a bean with two String properties key and value.
A binding is created for the “internalProfile” and input
fields are created for its values as below in JSF page.
//code in the JSF
<af:forEach
items="#{bindings.internalProfile.rangeSet}" var="row" varStatus="sdiIndex">
<af:inputText value="#{row['value']}" label="#{row['key']}"
id="it_${sdiIndex.index}"></af:inputText>
</af:forEach>
|
We can see the bindings of the page below.
Now, I need to fetch all these text fields in my bean which is
achieved by using the below code snippet.
BindingContainer bc =BindingContext.getCurrent().getCurrentBindingsEntry();
oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding list
=
(oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding)bc.get(BINDING_INTERNAL_PROFILE);
Row[]
allRowsInRange = list.getAllRowsInRange();
|