My xhtml file has a command button as so :-
<h:commandButton id="routeAddButton" action="#{routeStatic.add_new_route}" value="Add New Route" />
I am trying to control the visibilty of panelGrids using a boolean array.
<h:panelGrid id="route1Grid" columns="2" rendered="#{routeStatic.rendered[0]}" >
likewise
<h:panelGrid id="route2Grid" columns="2" rendered="#{routeStatic.rendered[1]}" >
and so on.
On each button click I am trying to increment a loop iterator(which is an instance variable) and successively set that panelGrid to be visible.
The instance variable is private int number_of_routes;
The Instance variable is initialized in the constructor to 0.
Now in my JSF Bean I have a method add_new_route() in which I want to do this:
System.out.println(this.number_of_routes);
this.rendered[this.number_of_routes]=true;
this.number_of_routes++;
However in my log, I am repeatedly getting the value as 0. I understand primitive types are passed as reference. So I decided to use a singleton array. Still no good. Any ideas people?
Is your bean request scoped ? In that case the variables will be created again after each click