after uninstalling (Quickinstaller) and removing (from buildout)
LinguaPlone any attempt to access the plone site or the ZMI (even ZMI
root) failes with the following stack trace:
2010-06-28 15:36:34 ERROR ZServerPublisher exception caught
Traceback (most recent call last):
File
"/home/buildout/eggs/Zope2-2.12.6-py2.6-linux-x86_64.egg/ZServer/PubCore/ZServerPublisher.py",
line 31, in __init__
response=b)
File
"/home/buildout/eggs/Zope2-2.12.6-py2.6-linux-x86_64.egg/ZPublisher/Publish.py",
line 438, in publish_module
environ, debug, request, response)
File
"/home/buildout/eggs/Zope2-2.12.6-py2.6-linux-x86_64.egg/ZPublisher/Publish.py",
line 264, in publish_module_standard
if request is not None: request.close()
File
"/home/buildout/eggs/Zope2-2.12.6-py2.6-linux-x86_64.egg/ZPublisher/BaseRequest.py",
line 215, in close
notify(EndRequestEvent(None, self))
File
"/home/buildout/eggs/zope.event-3.4.1-py2.6.egg/zope/event/__init__.py",
line 23, in notify
subscriber(event)
File
"/home/buildout/eggs/zope.component-3.7.1-py2.6.egg/zope/component/event.py",
line 26, in dispatch
for ignored in zope.component.subscribers(event, None):
File
"/home/buildout/eggs/zope.component-3.7.1-py2.6.egg/zope/component/_api.py",
line 138, in subscribers
return sitemanager.subscribers(objects, interface)
File
"/home/buildout/eggs/ZODB3-3.9.5-py2.6-linux-x86_64.egg/ZODB/Connection.py",
line 838, in setstate
self._setstate(obj)
File
"/home/buildout/eggs/ZODB3-3.9.5-py2.6-linux-x86_64.egg/ZODB/Connection.py",
line 906, in _setstate
self._reader.setGhostState(obj, p)
File
"/home/buildout/eggs/ZODB3-3.9.5-py2.6-linux-x86_64.egg/ZODB/serialize.py",
line 629, in setGhostState
state = self.getState(pickle)
File
"/home/buildout/eggs/ZODB3-3.9.5-py2.6-linux-x86_64.egg/ZODB/serialize.py",
line 622, in getState
return unpickler.load()
File "/opt/python/2.6.4/lib/python2.6/copy_reg.py", line 48, in
_reconstructor
obj = object.__new__(cls)
TypeError: ('object.__new__(SyncedLanguages) is not safe, use
Persistence.Persistent.__new__()', <function _reconstructor at
0xf754b80c>, (<class 'Products.LinguaPlone.vocabulary.SyncedLanguages'>,
<type 'object'>, None))
Maybe it's a bug in LinguaPlone which claims to uninstall cleanly.
Any hints are appreciated.
Plone 4.0b4, LinguaPlone 3.1a5
Thanks in advance
Michael
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Plone-Users mailing list
Plone...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plone-users
I think you've to remove it manually, this is a little guide I've
created to do it (just change the interface name):
In a product or egg with a browser dir, create this:
=================== browser_remove.py =================
from Products.Five import BrowserView
from zope.component import getMultiAdapter
from zope.interface import alsoProvides, noLongerProvides
from zope.component.interface import interfaceToName
from cab.contentextender.interfaces import IDocumentExtended
def remove_marker(object):
changed = False
if IDocumentExtended.providedBy(object):
noLongerProvides(object, IDocumentExtended)
changed = True
if changed:
object.reindexObject(idxs=['object_provides'])
class RemoveCabExtView(BrowserView):
def __call__(self):
tools = getMultiAdapter((self.context, self.request),
name='plone_tools')
catalog = tools.catalog()
brains = catalog(object_provides=interfaceToName(self.context,
IDocumentExtended))
for brain in brains:
obj = brain.getObject()
remove_marker(obj)
return ('Removed IDocumentExtended interfaces from %i objects
for cleanup' % len(brains))
===========================
and add to configure.zcml (always in the browser dir) this:
<browser:page
for="Products.CMFPlone.interfaces.siteroot.IPloneSiteRoot"
name="remove-interface"
class=".browser_remove.RemoveCabExtView"
permission="cmf.ManagePortal"
>
=========================
Now reload and go tohttp://miositoplone/@@remove-interface
The code is inspired by:
http://plone.org/products/collective-flowplayer/issues/5 , adding what is missing.
Question: can this be done with GS?