Hi all,
I want to upgrade an existing Plone 3.3.5 installation to Plone4. As
part of the process I first removed products that aren't available in
Plone 4 or aren't necessary anymore. One of these products is
Products.PloneLockManager from Enfold Systems
(http://dist.enfoldsystems.com/catalog/plonelockmanager). It was
installed as part of the server installation of the Enfold Desktop
software. As far as I know this product is not supported in Plone 4 and
I don't urgently need it. I removed the product in the Plone 3.3.5
installation through the SiteSetup --> Add/Remove Products.
The problem is that after product removal I get error messages when a
user is logged in and wants to change something in a page or folder. It
seems like the PloneLockManager product removal did not happen
completely and the product is still somehow active but broken when
rendering a page when a user is logged in.
I am pasting the tracelog below and hope that you can provide me hints
on where I can find more information how to properly remove this product
so that it doesn't leave Plone broken after its removal.
Tracelog:
----------------------------------------
Module ZPublisher.Publish, line 119, in publish
Module ZPublisher.mapply, line 88, in mapply
Module ZPublisher.Publish, line 42, in call_object
Module Shared.DC.Scripts.Bindings, line 313, in __call__
Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec
Module Products.CMFCore.FSPageTemplate, line 216, in _exec
Module Products.CMFCore.FSPageTemplate, line 155, in pt_render
Module Products.PageTemplates.PageTemplate, line 98, in pt_render
Module zope.pagetemplate.pagetemplate, line 117, in pt_render
Warning: Macro expansion failed
Warning: exceptions.KeyError: 'fl_macro'
Module zope.tal.talinterpreter, line 271, in __call__
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 891, in do_useMacro
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 536, in do_optTag_tal
Module zope.tal.talinterpreter, line 521, in do_optTag
Module zope.tal.talinterpreter, line 516, in no_tag
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 957, in do_defineSlot
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 536, in do_optTag_tal
Module zope.tal.talinterpreter, line 521, in do_optTag
Module zope.tal.talinterpreter, line 516, in no_tag
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 861, in do_defineMacro
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 957, in do_defineSlot
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 536, in do_optTag_tal
Module zope.tal.talinterpreter, line 521, in do_optTag
Module zope.tal.talinterpreter, line 516, in no_tag
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 949, in do_defineSlot
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 861, in do_defineMacro
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 536, in do_optTag_tal
Module zope.tal.talinterpreter, line 521, in do_optTag
Module zope.tal.talinterpreter, line 516, in no_tag
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 534, in do_optTag_tal
Module zope.tal.talinterpreter, line 516, in no_tag
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 745, in do_insertStructure_tal
Module Products.PageTemplates.Expressions, line 221, in evaluateStructure
Module zope.tales.tales, line 696, in evaluate
URL:
file:/home/an/Plone/buildout-cache/eggs/Products.ATContentTypes-1.3.4-py2.4.egg/Products/ATContentTypes/skins/ATContentTypes/atct_album_view.pt
Line 107, Column 4
Expression: <StringExpr u'plone.belowcontentbody'>
Names:
{'container': <PloneSite at /Plone>,
'context': <ATFolder at /Plone/art>,
'default': <object object at 0x2ac172d3d200>,
'here': <ATFolder at /Plone/art>,
'loop': {},
'nothing': None,
'options': {'args': ()},
'repeat': <Products.PageTemplates.Expressions.SafeMapping object at
0xe6e7e60>,
'request': <HTTPRequest,
URL=http://j.neumann.carto.net/art/atct_album_view>,
'root': <Application at >,
'template': <FSPageTemplate at /Plone/atct_album_view used for
/Plone/art>,
'traverse_subpath': [],
'user': <PropertiedUser 'admin'>}
Module Products.Five.browser.providerexpression, line 37, in __call__
Module plone.app.viewletmanager.manager, line 154, in render
Module plone.app.viewletmanager.manager, line 83, in render
Module plone.app.layout.viewlets.common, line 44, in render
Module Shared.DC.Scripts.Bindings, line 313, in __call__
Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec
Module Products.PageTemplates.PageTemplateFile, line 129, in _exec
Module Products.PageTemplates.PageTemplate, line 98, in pt_render
Module zope.pagetemplate.pagetemplate, line 117, in pt_render
Module zope.tal.talinterpreter, line 271, in __call__
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 855, in do_condition
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 536, in do_optTag_tal
Module zope.tal.talinterpreter, line 521, in do_optTag
Module zope.tal.talinterpreter, line 516, in no_tag
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 824, in do_loop_tal
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 536, in do_optTag_tal
Module zope.tal.talinterpreter, line 521, in do_optTag
Module zope.tal.talinterpreter, line 516, in no_tag
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 408, in do_startTag
Module zope.tal.talinterpreter, line 485, in attrAction_tal
Module Products.PageTemplates.Expressions, line 228, in evaluateText
Module zope.tales.tales, line 696, in evaluate
URL: document_actions
Line 11, Column 12
Expression: <PathExpr standard:'daction/url'>
Names:
{'container': <ATFolder at /Plone/art>,
'context': <ATFolder at /Plone/art>,
'default': <object object at 0x2ac172d3d200>,
'here': <ATFolder at /Plone/art>,
'loop': {'daction': <Products.PageTemplates.Expressions.PathIterator
object at 0xdc4fd90>},
'nothing': None,
'options': {'args': ()},
'repeat': <Products.PageTemplates.Expressions.SafeMapping object at
0xd8f6d40>,
'request': <HTTPRequest,
URL=http://j.neumann.carto.net/art/atct_album_view>,
'root': <Application at >,
'template': <ImplicitAcquirerWrapper object at 0xe057f50>,
'traverse_subpath': [],
'user': <PropertiedUser 'admin'>,
'view': <Products.Five.viewlet.metaconfigure.DocumentActionsViewlet
object at 0xdce04d0>,
'views': <zope.app.pagetemplate.viewpagetemplatefile.ViewMapper object
at 0xe057a90>}
Module zope.tales.expressions, line 217, in __call__
Module Products.PageTemplates.Expressions, line 153, in _eval
Module zope.tales.expressions, line 124, in _eval
Module Products.PageTemplates.Expressions, line 103, in
trustedBoboAwareZopeTraverse
Module zope.traversing.adapters, line 164, in traversePathElement
__traceback_info__: ({'category': 'document_actions', 'available': True,
'description': '', 'title': 'Lock Manager', 'url':
<Products.CMFCore.Expression.Expression object at 0xc6d9cf8>, 'visible':
True, 'allowed': True, 'id': 'lock_manager'}, 'url')
Module zope.traversing.adapters, line 49, in traverse
__traceback_info__: ({'category': 'document_actions', 'available': True,
'description': '', 'title': 'Lock Manager', 'url':
<Products.CMFCore.Expression.Expression object at 0xc6d9cf8>, 'visible':
True, 'allowed': True, 'id': 'lock_manager'}, 'url', [])
Module Products.CMFCore.ActionInformation, line 200, in __getitem__
Module Products.CMFCore.Expression, line 48, in __call__
Module Products.PageTemplates.ZRPythonExpr, line 49, in __call__
__traceback_info__: portal_url +
'/portal_lock_manager/pane_manage_locks' + '?search_path=' +
folder.relative_path()
Module PythonExpr, line 1, in <expression>
AttributeError: relative_path
----------------------------------------------
So it seems that PloneLockManager is still somehow called when rendering
a page, but obviously isn't present anymore after the product uninstall.
Do you have any idea how I can properly remove the PloneLockManager?
Thank you for your help!
Andreas Neumann
_______________________________________________
Setup mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/setup