Old or removed or deleted portal tool or configlet causes problems on reinstall
When you have added a configlet (or possibly a tool) to a portal and then decided to remove the product or that you didn't need the configlet and so removed it from the product, this causes errors, particularly when you try to install or reinstall other products that contain configlets, as it looks for the configlet in some deep tool registry.
The error may well be the one below, or it may be something different.
'NoneType' object is not callable
Their may be more than one tool causing the issue (bbmenus, bbwebsite)To remove all references:
ZMI > portal_controlpanel the reference to the tool(s),
also the type maybe reference in 'types_not_searched', 'default_page_types', 'typesUseViewActionInListings' etc
ZMI > portal_properties > site properties >
Remove from Tool Registry
To delete it from the deep level tool registry. This worked for me with portal_bbclickcounter in Networks on dev. To do this you must:
Back up your instance
Shut it down
./bin/plonectl stop
./bin/instance debug
or zeo..
sudo bin/shutdowncluster
sudo bin/zeoserver start
sudo bin/client1 debug
or just
sudo bin/client1 stop sudo bin/client1 debug
then at the python >>> prompt
setup_tool = app.myportal.portal_setup #myportal = portal id
toolset = setup_tool.getToolsetRegistry()
If you've forgotten the name of the tool, you need to check using:
for item in toolset._required.keys():
print item
This prints out a list of everything contained within this record. Once you have the name of the tool required, in this case portal_bbclickcounter, do the following
if 'portal_bbclickcounter' in toolset._required.keys():
del toolset._required['portal_bbclickcounter']
setup_tool._toolset_registry = toolset
from transaction import commit
commit()
app._p_jar.sync()
There may well be other references to things that you need to get rid of. See the references below for more information and help.
http://blog.fourdigits.nl/removing-a-persistent-local-utility-part-ii
https://weblion.psu.edu/trac/weblion/wiki/GenericSetup
http://blog.fourdigits.nl/removing-a-persistent-local-utility
By the way, the Google search which unearthed these links was: genericsetup 'NoneType' object is not callable
Document Actions




{Built on Planet Plone}