[Zope-dev] Re: products not found when initializing zodb
Daniel Nouri
daniel.nouri at gmail.com
Mon Oct 1 09:42:27 EDT 2007
Wichert Akkerman wrote:
> (I've filed this at https://bugs.launchpad.net/zope2/+bug/147201 as well)
>
> For a Plone site I am using a separate ZODB for the catalog so I can
> tune it a bit. I do this using the standard method in zope.conf:
>
> <zodb_db catalog>
> mount-point /plone.org/portal_catalog
> container-class Products.CMFPlone.CatalogTool.CatalogTool
> <zeoclient>
> server 127.0.0.1:5010
> storage 2
> name catalogstorage
> var /srv/plone.org/buildout/parts/instance1/var
> </zeoclient>
> </zodb_db>
>
> This works perfect in a normal Zope2 instance. But when I use buildout
> CMFPlone is stored in a separate directory that is listed in a products
> line in zope.conf:
>
> instancehome /srv/plone.org/buildout/parts/instance1
> products /srv/plone.org/buildout/products
> products /srv/plone.org/buildout/parts/productdistros
> products /srv/plone.org/buildout/parts/plone
>
> the result is that Zope no longer starts:
>
> Error: The object named by "Products.CMFPlone.CatalogTool.CatalogTool" could not be imported
> Traceback (most recent call last):
> File "/srv/plone.org/buildout/parts/zope2/lib/python/Zope2/Startup/datatypes.py", line 94, in importable_name
> package = __import__(n, g, g, component)
> ImportError: No module named CMFPlone
IIRC, patching Zope2/Startup/zopeschema.xml to use "string" as the datatype
for "container-class" instead of ".python_dotted_path" fixes the problem.
(To find out where container-type is used in Python code, grep for
"container_type".)
Daniel
More information about the Zope-Dev
mailing list