One of the most common issues that I've faced, and watched several
people struggle with, during Zope 3 development is to figure why a
certain adapter is not found, or why a certain other adapter is found
instead of the one you are expecting.

I was wondering if there is something that could be done to help
pinpoint this kind of issue, since adapters are really a key part of
the component architecture.

One of the ideas that occurred me was that in debug mode we could
create a wrapper around the to-be-returned adapter and stuff some
trace information in there to help diagnose possible issues. Or maybe
we could just use the logging framework to output some information.

The kind of info I'm looking for is something along the lines:

 'We've tried to look up an adapter for (ISomething, ITheOther) but
none was found'
 'Found an adapter for IFoo, which is a base class for the IBar
interface requested. No adapter has been found for the most-specific
interface IBar'


Sidnei da Silva
Enfold Systems      
Fax +1 832 201 8856     Office +1 713 942 2377 Ext 214
Zope3-dev mailing list

Reply via email to