I tested moving a Data.fs file from an instance of schooltool.gradebook to a schooltool-only instnace, and the server was able to start. I assume that moving the custom scoresystems out of the site manager had something to do with that. However, as soon as I visit localhost:7080 in the bowser, I get a number of exceptions: aelkner@ubuntu:~/sandboxes/scoresystems_container/schooltool$ make run bin/start-schooltool-instance instance Reading configuration from /home/aelkner/sandboxes/scoresystems_container/schooltool/instance/schooltool.conf 2011-04-27 01:00:08,311 main db: evolving in mode EVOLVEMINIMUM Starting server in PID 17404. serving on http://127.0.0.1:7080 2011-04-27 01:00:12,146 Couldn't load state for 0xa2 Traceback (most recent call last): File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 851, in setstate self._setstate(obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 919, in _setstate self._reader.setGhostState(obj, p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/serialize.py", line 630, in setGhostState obj.__setstate__(state) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/persistentregistry.py", line 40, in __setstate__ self._createLookup() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 91, in _createLookup self._v_lookup = self.LookupClass(self) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 439, in __init__ self.init_extendors() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 476, in init_extendors self.add_extendor(p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 480, in add_extendor for i in provided.__iro__: AttributeError: type object 'ICustomScoreSystem' has no attribute '__iro__' 2011-04-27 01:00:12,148 Couldn't load state for 0xa2 Traceback (most recent call last): File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 851, in setstate self._setstate(obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 919, in _setstate self._reader.setGhostState(obj, p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/serialize.py", line 630, in setGhostState obj.__setstate__(state) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/persistentregistry.py", line 40, in __setstate__ self._createLookup() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 91, in _createLookup self._v_lookup = self.LookupClass(self) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 439, in __init__ self.init_extendors() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 476, in init_extendors self.add_extendor(p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 480, in add_extendor for i in provided.__iro__: AttributeError: type object 'ICustomScoreSystem' has no attribute '__iro__' 2011-04-27 01:00:12,148 Error while reporting an error to the Error Reporting utility Traceback (most recent call last): File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.app.publication-3.12.0-py2.6.egg/zope/app/publication/zopepublication.py", line 265, in _logErrorWithErrorReportingUtility errUtility = zope.component.getUtility(IErrorReportingUtility) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/_api.py", line 166, in getUtility utility = queryUtility(interface, name, context=context) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/_api.py", line 172, in queryUtility return getSiteManager(context).queryUtility(interface, name, default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/registry.py", line 163, in queryUtility return self.utilities.lookup((), provided, name, default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 851, in setstate self._setstate(obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 919, in _setstate self._reader.setGhostState(obj, p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/serialize.py", line 630, in setGhostState obj.__setstate__(state) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/persistentregistry.py", line 40, in __setstate__ self._createLookup() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 91, in _createLookup self._v_lookup = self.LookupClass(self) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 439, in __init__ self.init_extendors() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 476, in init_extendors self.add_extendor(p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 480, in add_extendor for i in provided.__iro__: AttributeError: type object 'ICustomScoreSystem' has no attribute '__iro__' 2011-04-27 01:00:12,202 Couldn't load state for 0xa2 Traceback (most recent call last): File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 851, in setstate self._setstate(obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 919, in _setstate self._reader.setGhostState(obj, p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/serialize.py", line 630, in setGhostState obj.__setstate__(state) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/persistentregistry.py", line 40, in __setstate__ self._createLookup() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 91, in _createLookup self._v_lookup = self.LookupClass(self) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 439, in __init__ self.init_extendors() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 476, in init_extendors self.add_extendor(p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 480, in add_extendor for i in provided.__iro__: AttributeError: type object 'ICustomScoreSystem' has no attribute '__iro__' 2011-04-27 01:00:12,203 Exception while rendering view on exception Traceback (most recent call last): File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.app.publication-3.12.0-py2.6.egg/zope/app/publication/zopepublication.py", line 379, in handleException body = mapply(view, (), request) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.publisher-3.12.6-py2.6.egg/zope/publisher/publish.py", line 107, in mapply return debug_call(obj, args) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.publisher-3.12.6-py2.6.egg/zope/publisher/publish.py", line 113, in debug_call return obj(*args) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/src/schooltool/skin/error.py", line 42, in __call__ return self.index() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.browserpage-3.12.2-py2.6.egg/zope/browserpage/viewpagetemplatefile.py", line 83, in __call__ return self.im_func(im_self, *args, **kw) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.browserpage-3.12.2-py2.6.egg/zope/browserpage/viewpagetemplatefile.py", line 51, in __call__ sourceAnnotations=getattr(debug_flags, 'sourceAnnotations', 0), File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.pagetemplate-3.5.2-py2.6.egg/zope/pagetemplate/pagetemplate.py", line 113, in pt_render strictinsert=0, sourceAnnotations=sourceAnnotations)() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 271, in __call__ self.interpret(self.program) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 343, in interpret handlers[opcode](self, args) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 888, in do_useMacro self.interpret(macro) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 343, in interpret handlers[opcode](self, args) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 533, in do_optTag_tal self.do_optTag(stuff) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 518, in do_optTag return self.no_tag(start, program) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 513, in no_tag self.interpret(program) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 343, in interpret handlers[opcode](self, args) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 946, in do_defineSlot self.interpret(slot) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 343, in interpret handlers[opcode](self, args) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 726, in do_insertTranslation xlated_msgid = self.translate(msgid, default, i18ndict, obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.tal-3.5.2-py2.6.egg/zope/tal/talinterpreter.py", line 838, in translate i18ndict, default=default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.pagetemplate-3.5.2-py2.6.egg/zope/pagetemplate/engine.py", line 107, in translate context=self.request, default=default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.i18n-3.7.4-py2.6.egg/zope/i18n/__init__.py", line 110, in translate util = queryUtility(ITranslationDomain, domain) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/_api.py", line 172, in queryUtility return getSiteManager(context).queryUtility(interface, name, default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/registry.py", line 163, in queryUtility return self.utilities.lookup((), provided, name, default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 851, in setstate self._setstate(obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 919, in _setstate self._reader.setGhostState(obj, p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/serialize.py", line 630, in setGhostState obj.__setstate__(state) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/persistentregistry.py", line 40, in __setstate__ self._createLookup() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 91, in _createLookup self._v_lookup = self.LookupClass(self) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 439, in __init__ self.init_extendors() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 476, in init_extendors self.add_extendor(p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 480, in add_extendor for i in provided.__iro__: AttributeError: type object 'ICustomScoreSystem' has no attribute '__iro__' 2011-04-27 01:00:12,207 Couldn't load state for 0xa2 Traceback (most recent call last): File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 851, in setstate self._setstate(obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 919, in _setstate self._reader.setGhostState(obj, p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/serialize.py", line 630, in setGhostState obj.__setstate__(state) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/persistentregistry.py", line 40, in __setstate__ self._createLookup() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 91, in _createLookup self._v_lookup = self.LookupClass(self) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 439, in __init__ self.init_extendors() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 476, in init_extendors self.add_extendor(p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 480, in add_extendor for i in provided.__iro__: AttributeError: type object 'ICustomScoreSystem' has no attribute '__iro__' 2011-04-27 01:00:12,207 Error while reporting an error to the Error Reporting utility Traceback (most recent call last): File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.app.publication-3.12.0-py2.6.egg/zope/app/publication/zopepublication.py", line 265, in _logErrorWithErrorReportingUtility errUtility = zope.component.getUtility(IErrorReportingUtility) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/_api.py", line 166, in getUtility utility = queryUtility(interface, name, context=context) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/_api.py", line 172, in queryUtility return getSiteManager(context).queryUtility(interface, name, default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/registry.py", line 163, in queryUtility return self.utilities.lookup((), provided, name, default) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 851, in setstate self._setstate(obj) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", line 919, in _setstate self._reader.setGhostState(obj, p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/serialize.py", line 630, in setGhostState obj.__setstate__(state) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.component-3.9.5-py2.6.egg/zope/component/persistentregistry.py", line 40, in __setstate__ self._createLookup() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 91, in _createLookup self._v_lookup = self.LookupClass(self) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 439, in __init__ self.init_extendors() File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 476, in init_extendors self.add_extendor(p) File "/home/aelkner/sandboxes/scoresystems_container/schooltool/eggs/zope.interface-3.6.1-py2.6-linux-x86_64.egg/zope/interface/adapter.py", line 480, in add_extendor for i in provided.__iro__: AttributeError: type object 'ICustomScoreSystem' has no attribute '__iro__' All of those exceptions are for the one transaction. I'm woindering how we can expect schooltool to run with gradebook objects hanging out in the data file like this.