TypeError: iteration over non-sequence

by Mikko Ohtamaa last modified Dec 30, 2008 03:09 PM
Cannot view the site after moving Data.fs to a new server

You will get this page when accessing the site:

Site Error

An error was encountered while publishing this resource.

Error Type: TypeError
Error Value: iteration over non-sequence

You can login to Zope management interface. But viewing sites through it is not possible. You will receive a traceback to the console similar to the following if you have started Zope process on foreground:

2008-11-09 22:53:13 INFO Zope Ready to handle requests
2008-11-09 22:54:50 WARNING OFS.Uninstalled Could not import class 'ATSETemplateTool' from module 'Products.ATSchemaEditorNG.ATSETemplateTool'
2008-11-09 22:54:50 WARNING OFS.Uninstalled Could not import class 'SchemaEditorTool' from module 'Products.ATSchemaEditorNG.SchemaEditorTool'
2008-11-09 22:54:50 WARNING OFS.Uninstalled Could not import class 'SchemaManagerTool' from module 'Products.GenericPloneContent.SchemaManagerTool'
2008-11-09 22:54:50 WARNING OFS.Uninstalled Could not import class 'FormGenTool' from module 'Products.PloneFormGen.tools.formGenTool'
2008-11-09 22:54:50 WARNING OFS.Uninstalled Could not import class 'TemplatedDocument' from module 'collective.easytemplate.content.TemplatedDocument'
2008-11-09 22:54:50 WARNING OFS.Uninstalled Could not import class 'FormFolder' from module 'Products.PloneFormGen.content.form'
2008-11-09 22:54:52 WARNING OFS.Uninstalled Could not import class 'IDropdownSpecific' from module 'webcouturier.dropdownmenu.browser.interfaces'
2008-11-09 22:54:52 ERROR Zope.SiteErrorLog http://localhost:8080/lsm
Traceback (innermost last):
  Module ZPublisher.Publish, line 110, in publish
  Module ZPublisher.BaseRequest, line 424, in traverse
  Module ZPublisher.BeforeTraverse, line 99, in __call__
  Module Products.CMFCore.PortalObject, line 94, in __before_publishing_traverse__
  Module zope.event, line 23, in notify
  Module zope.component.event, line 26, in dispatch
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module zope.component.event, line 33, in objectEventNotify
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in subscribers
  Module zope.interface.adapter, line 535, in subscribers
  Module plone.browserlayer.layer, line 18, in mark_layer
  Module zope.interface.declarations, line 848, in directlyProvides
  Module zope.interface.declarations, line 1371, in _normalizeargs
  Module zope.interface.declarations, line 1370, in _normalizeargs
TypeError: iteration over non-sequence

notice the 'Could not import class' message.

Reason

You do not have identical product configuration on the new server. Please install the missing products and site should work fine again.

Please note that you can get a 'TypeError: iteration over non-sequence' exception in other contexts not related with missing products at all. Look for the 'Could not import class' message in your traceback.