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

2008-11-11 Thread peter pilsl

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



___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


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

2008-11-11 Thread Tres Seaver
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

peter pilsl wrote:
 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__

You may need to do surgery on your old userfolder here:  it is the
'groups' object in that method, and apparently has a 'has_key' method
but not a '__getitem__'.  I would set a breakpoint in the
'old_validation' method and watch it fail.

If you look at the user folder(s) in your site via the ZMI, what type
are they?  (they will have the name 'acl_users' in their folder).

 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.

For any package in the old server's $SOFTWARE_HOME/lib/python/Products:

 - If a package with the same name is in the new server's
   $SOFTWARE_HOME/lib/python/Products, that means that it shipss
   with Zope itself;  you should not need to do anything.

 - Otherwise, try copying the old package into $INSTANCE_HOME/Products.
   You may have to update or patch the copied products to get them to
   work under Zope 2.10.

 thnx for any hints on how to procede.



- --
===
Tres Seaver  +1 540-429-0999  [EMAIL PROTECTED]
Palladion Software   Excellence by Designhttp://palladion.com
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJGbiw+gerLs4ltQ4RAjVqAJ4qmKo4PEDo5OCLXvQf+DgpVflt4gCffEo0
d6OcfMOSf1yP0Zp+h5o8n/M=
=dPWt
-END PGP SIGNATURE-

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )