Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 1.2.4
-
Fix Version/s: None
-
Component/s: JSF Integration (Dormant)
-
Labels:None
-
Environment:Operating System: All
Platform: PC
-
Bugzilla Id:32370
Description
In FacesRequestProcessor.doForward() (as well as FacesTilesRequestProcessor), if
the call to lifecycle.render(context) throws an exception, then the context is
never given a chance to be released, resulting in an invalid FacesContext being
pegged to the executing thread.
The following code:
======== SNIP ========
lifecycle.render(context);
if (created) {
if (log.isTraceEnabled())
context.release();
} else {
if (log.isTraceEnabled())
}
======== /SNIP ========
Should probably be changed to something like:
======== SNIP ========
try
finally {
if (created) {
if (log.isTraceEnabled())
context.release();
} else {
if (log.isTraceEnabled())
}
}
======== /SNIP ========