Bug 1091215
| Summary: | Exception thrown from applications requestInitialized ServletRequestListener causes skipping requestDestroyed listeners, causing inconsistent state in Weld | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [JBoss] JBoss Enterprise Application Platform 6 | Reporter: | Marek Schmidt <maschmid> | ||||||
| Component: | Web | Assignee: | Rémy Maucherat <rmaucher> | ||||||
| Status: | CLOSED EOL | QA Contact: | Michael Cada <mcada> | ||||||
| Severity: | medium | Docs Contact: | |||||||
| Priority: | unspecified | ||||||||
| Version: | 6.3.0 | CC: | myarboro, pslavice | ||||||
| Target Milestone: | --- | ||||||||
| Target Release: | EAP 6.4.0 | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2019-08-19 12:46:45 UTC | Type: | Bug | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Embargoed: | |||||||||
| Attachments: |
|
||||||||
|
Description
Marek Schmidt
2014-04-25 08:38:38 UTC
Created attachment 889562 [details]
reproducer source
Issue still persists in EAP 6.3.0.ER10. This looks like an invalid requirement to me, there's no provision indicating that requestDestroyed is supposed to be called in this situation. Actually, it is the opposite, the section 11.6 on listener exceptions from the servlet spec indicates the listener must deal with it: "Some exceptions do not occur under the call stack of another component in the application. An example of this is a SessionListener that receives a notification that a session has timed out and throws an unhandled exception, or of a ServletContextListener that throws an unhandled exception during a notification of servlet context initialization, or of a ServletRequestListener that throws an unhandled exception during a notification of the initialization or the destruction of the request object. In this case, the Developer has no opportunity to handle the exception. The container may respond to all subsequent requests to the Web application with an HTTP status code 500 to indicate an application error. Developers wishing normal processing to occur after a listener generates an exception must handle their own exceptions within the notification methods." So the question is if you'd like to request optional proprietary behavior to be implemented. |