Tim Holloway wrote:You should never assume that property getters on a backing bean will be called only once. In particular, don't do any side (state-changing) logic in getters for that reason. The bean's properties will be retrieved at multiple times in the JSF lifecycle as needed to prepare for update, display, and validate.
As far as the second question goes, I haven't studied that.
Thanks for your answer to the first question.
Regarding to the second one, I guess I've got it.
According to the book 'Core JSF Programming', the method that is binded to 'actionListener' attribute in component tag will always been invoked earlier than the progressAction method of <f:actionListener> ActionListener.
In my opinion, <f:setPropertyActionListener> is a kind of <f:actionListener>. Therefore, its progressAction method will not be invoked until 'actionListener' attribute method finished.
I have made a
test and it proved my guess.