[Zope-dev] Improper exception handling for XML-RPC requests

Phillip J. Eby pje@telecommunity.com
Fri, 17 Dec 1999 15:54:12 -0500


ZPublisher.Publish.publish_module incorrectly calls the exception() method
of the *old* response object (i.e., an HTTPResponse) when an exception
occurs.  This results in an xmlrpclib.ProtocolError on the calling end,
rather than a Fault() as should occur.  To correct, change the 'except:'
clauses of publish_module() to call request.response.exception() instead of
just response.exception().

This bug has been submitted to the Collector.  There are a couple of other
odd behavior patterns relating to XML-RPC calls and ZPublisher/Zope that Ty
and I are trying to nail down; hopefully we'll have more precise
definitions, if not fixes for them, sometime soon.