[Zope-dev] Browser Stop Button and Zope REQUESTs

Steve Alexander steve@cat-box.net
Wed, 28 Aug 2002 14:03:29 +0100


Oliver Bleutgen wrote:
>
> Mod_perl also seems _not_ to stop a long running script if this script 
> doesn't try to write to the RESPONSE (or whatever they call it). The 
> perl test script I posted does write output, and this causes it to stop. 
> If I try a script with no output, it never gets stopped.
> 
> Java servlets also seem only to get stopped automatically if they try to 
> write into the RESPONSE stream of a closed connection. Buffering aside, 
> if you try to output something in a servlet and the connection is 
> closed, you get an exception.
> 
> Im my uninformed opinion, Zope should do the same.
> 
> Is this possible?

Although Zope has a "response stream" method of sending information back 
to the client, most things in Zope don't use it.

Instead, the response information is aggregated, converted into a 
string, and then sent back all at once at the sucessful completion of 
the transaction.

These other systems you mention are using the availability of a response 
stream as a surrogate for RESPONSE.isClientConnected(). I'd rather have 
an explicit RESPONSE.isClientConnected().
Although, it would make sense to raise an exception if someone tried to 
write to the Zope response stream, in the rare cases when this does happen.

--
Steve Alexander