Jeremy Hylton wrote at 2003-2-3 10:45 -0500:
 > ...
 > Note that a new transaction is begin implicitly any time a persistence
 > object is referenced.  So the error handling code does execute in the
 > context of a transaction.
I know...
 > It may be that it's just not the
 > transaction you'd like it to be in.  I assume that some work done
 > during error handling is getting committed with the next successful
 > request.  Yuck.
That's the problem.

 > How does user-level error handling get invoked in Zope?
>From "ZPublisher.Publish".
It essentially executes the code outlined in my original post:

   transaction.begin()
   try:
       main_action()
       transaction.commit()
   except:
       transaction.abort()
       handle_error()

There is some magic to determine "main_action"
and "handle_error" irrelevant to our current discussion.


Dieter

_______________________________________________
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )

Reply via email to