was sitting directly in the Products/XXXX directory instead of Products/XXXX/src directory..this
caused obviously the confusion of the interface matching machinery.
--On Montag, 2. Mai 2005 18:42 Uhr +0200 Dominik Huber <[EMAIL PROTECTED]> wrote:
Andreas Jung wrote:
I restructured the TXNG 3 source so that the core implementation can be used as package (within Zope 2.8/Five) ...so far so good.
The configure.zcml under Products/TextIndexNG3 contains several statements of the form:
<utility provides="textindexng.interfaces.IConverter" component="textindexng.converters.doc.DocConverter" name="application/vnd.ms-word" />
Inside a browser view class there is the following method:
def get_converters(self): """ return all available converters """
from zope.app import zapi from textindexng.interfaces import IConverter print [x for x in zapi.getUtilitiesFor(IConverter)] return zapi.getUtilitiesFor(IConverter)
But the getUtilitiesFor() call always returns nothing. In my case textindexng/interfaces contains several files with interfaces and all interfaces are aliased in interfaces/__init__.py. The "textindexng" package itself lives unter Products/TextIndexNG3 and sys.path is extended in Products/TextIndexNG3/__init__.py to be able to import the "textindexng" package without the need to use "Products.TextIndexNG3" in imports....so any ideas why the utility machinery refuses to return the registered utilities for the given interface? A
Did you include the configure.zcml by a file (for example textindexng-configure.zcml) within zope3/package-includes folder?
content of textindexng-configure.zcml <include package="textindexng"/>
Regards, Dominik Huber
Description: PGP signature_______________________________________________ Zope3-dev mailing list Zope3firstname.lastname@example.org Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com