Hi Ed,
I am a bit uncertain why so many changes?
The InitFacesContext/WebappLifecycleListener class should already be
able to do the cleanup.
See the original code of InitFacesContext, the releaseCurrentInstance
and cleanupInitMaps methods.
And the WebappLifecycleListener, the requestInitialized method.
This was done this way because the thread cannot be cleaned up until
EITHER the first request starts processing (which means initialization
is done), OR a new InitFacesContext is constructed using its constructor
because the FacesInitializer is called for another application (and the
InitFacesContext constructor then does the cleanup if the request for
the InitFacesContext is done for a different ServletContext).
If there is anything not cleaning up the problem should just lie in the
implementation of the
InitFacesContext cleanupInitMaps method.
No other usages should exist for the InitFacesContext.
Thanks!
Kind regards,
Manfred Riem
On 6/24/15, 5:00 PM, Edward Burns wrote:
> https://java.net/jira/browse/JAVASERVERFACES-3969
>
> Hello Manfred and team,
>
> Manfred, I know you are traveling this week, but I need a review on the
> changebundle attached to the issue. I invested significant time in
> commenting the code, which I extracted to create the changebundle.
>
> Can you please review it?
>
> If you can come up with a different approach that
>
> 1. passes all existing tests
>
> 2. fixes BugDB 20458755
>
> Thanks,
>
> Ed