Removed most of the "retry" in rescue clauses, since it was hidding critical issue.
This should be the choice of the application to "retry" on exception, otherwise let the framework handle this in the lower part. Better handling of response termination (alias commit) Added the notion of "status_committed"
This commit is contained in:
@@ -38,15 +38,10 @@ feature -- Execution
|
||||
execute (req: WSF_REQUEST; res: WSF_RESPONSE)
|
||||
local
|
||||
l_handled: BOOLEAN
|
||||
rescued: BOOLEAN
|
||||
do
|
||||
if not rescued then
|
||||
l_handled := router.dispatch (req, res)
|
||||
if not l_handled then
|
||||
execute_default (req, res)
|
||||
end
|
||||
else
|
||||
execute_rescue (req, res)
|
||||
l_handled := router.dispatch (req, res)
|
||||
if not l_handled then
|
||||
execute_default (req, res)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -54,14 +49,6 @@ feature -- Execution
|
||||
deferred
|
||||
end
|
||||
|
||||
execute_rescue (req: WSF_REQUEST; res: WSF_RESPONSE)
|
||||
do
|
||||
if not res.header_committed then
|
||||
res.put_header ({HTTP_STATUS_CODE}.internal_server_error, Void)
|
||||
end
|
||||
res.flush
|
||||
end
|
||||
|
||||
note
|
||||
copyright: "2011-2011, Eiffel Software and others"
|
||||
license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)"
|
||||
|
||||
Reference in New Issue
Block a user