When I use DialogFramework (of PrimeFaces), it's adds a new view to the session every time. The problem is that when I post an AJAX request to the original view, the _keys list is not updated, only the view get updated in the _serializedViews map.
After I reach the limit defined with the org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION context-param, MyFaces gets the first element in the _keys list (which is the container view) - assuming that this is the oldest view in the session - and remove the corresponding view from the _serializedViews map by the key. But clearly it is not, as I already posted some AJAX requests to it.
I think the optimal behavior would be the following: when a view gets an ajax request the code should remove the the key from the _keys list and than add it as a last element.
The related class is org.apache.myfaces.application.viewstate.SerializedViewCollection at the if condition started at line 87.
My question is if it is an intended behavior or if it's a bug.