Instead of catch Exception, rethrow; move it to a finally block - based on some status variable.