[Zope] AttributeError: __getitem__ when migrating zope from 2.6.1 to 2.10.5

peter pilsl pilsl at goldfisch.at
Tue Nov 11 10:23:54 EST 2008


I'm a total newbie to Zope and have to face the task to migrate a old 
and chaotic 2.6.1.-Zope-setup from an old server to a new Server with 
Zope 2.10.

What I did until now

* created a new instance on the new server with mkzopeinstance.py
* copied the old Data.fs to the var-subfolder of the new instance
* started the new zope
* I can login to the new zope-managment and see all the old stuff, old 
users etc.

but I've two problems (and I dont know if they are related)

Problem 1)

when accessing Zope outside the managment-tree I get the following error:

Site Error

An error was encountered while publishing this resource.

AttributeError
Sorry, a site error occurred.

Traceback (innermost last):

     * Module ZPublisher.Publish, line 202, in publish_module_standard
     * Module ZPublisher.Publish, line 150, in publish
     * Module Zope2.App.startup, line 221, in zpublisher_exception_hook
     * Module ZPublisher.Publish, line 110, in publish
     * Module ZPublisher.BaseRequest, line 578, in traverse
     * Module ZPublisher.BaseRequest, line 683, in old_validation

AttributeError: __getitem__ (Also, the following error occurred while 
attempting to render the standard error message, please see the event 
log for full details: You are not allowed to access 
'standard_html_header' in this context)

the logfiles says:

------
2008-11-11T16:18:36 ERROR Zope.SiteErrorLog 
http://intranet2.parlament.gruene.at:8080/intranet/gkcms/index_html
Traceback (innermost last):
   Module ZPublisher.Publish, line 110, in publish
   Module ZPublisher.BaseRequest, line 578, in traverse
   Module ZPublisher.BaseRequest, line 683, in old_validation
AttributeError: __getitem__
------
2008-11-11T16:18:36 ERROR root Exception while rendering an error message
Traceback (most recent call last):
   File "/usr/lib/zope2.10/lib/python/OFS/SimpleItem.py", line 225, in 
raise_standardErrorMessage
     v = s(client, REQUEST, **kwargs)
   File "/usr/lib/zope2.10/lib/python/OFS/DTMLMethod.py", line 144, in 
__call__
     r=apply(HTML.__call__, (self, client, REQUEST), kw)
   File "/usr/lib/zope2.10/lib/python/DocumentTemplate/DT_String.py", 
line 476, in __call__
     try: result = render_blocks(self._v_blocks, md)
Unauthorized: You are not allowed to access 'standard_html_header' in 
this context




Problem 2) (maybe same source then problem 1)

In the old zope there are a load of "Products" which I can see in the 
managment-interface and the files seems to be installed under 
lib/python/Products.  On the new server there are two folders called 
Products: INSTANCENAME/lib/python/Products like on the old and 
INSTANCENAME/Products. I can see the products on the new server as well 
even they dont seem to be installed.

Do I need to copy the files from the old Zope to the new one? To which 
folder? Or do I need to install the products from the scratch? (I didnt 
find out how to install these "products". They can be downloaded as 
tgz-packages and I dont know if I simply have to copy them to one of the 
mentioned Products-folder or register them somehow in Zope.


thnx for any hints on how to procede.

peter





More information about the Zope mailing list