I had been using code including tal:define="portal_url
context/plone_portal_state/portal_url" for some time before I encountered
errors about it. Mikko suggested using context/@@plone_portal_state/portal_url
instead, and that fixed the problem. I'd like to understand why.
Specifically, the traceback below happened when I installed plone.app.ldap and
tried to add an ldap server. The plone.app.ldap control panel (as well as the
rest of the site afaict) appeared without an error until I clicked the "add
LDAP server" button.
Traceback (innermost last):
Module ZPublisher.Publish, line 119, in publish
Module ZPublisher.mapply, line 88, in mapply
Module ZPublisher.Publish, line 42, in call_object
Module zope.formlib.form, line 770, in __call__
Module zope.formlib.form, line 885, in render
Module zope.formlib.form, line 764, in render
Module plone.app.form._named, line 26, in __call__
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.CacheSetup.patch_cmf, line 126, in PT_pt_render
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 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 223, in evaluateStructure
Module zope.tales.tales, line 696, in evaluate
- URL:
file:/opt/plone/zeocluster/parts/svnproducts/naz.umbrella/naz/umbrella/skins/naz_umbrella_custom_templates/main_template.pt
- Line 126, Column 3
- Expression: <StringExpr u'naz.portalbottom'>
- Names:
{'container': <Products.Five.metaclass.ServerAdding object at 0x120b75d0>,
'context': <Products.Five.metaclass.ServerAdding object at 0x120b75d0>,
'default': <object object at 0x7fb9821d9200>,
'here': <Products.Five.metaclass.ServerAdding object at 0x120b75d0>,
'loop': {},
'nothing': None,
'options': {'args': ()},
'repeat': <Products.PageTemplates.Expressions.SafeMapping object at
0x7fb971986830>,
'request': <HTTPRequest,
URL=http://10.0.0.3:8080/Plone/+ldapserver/plone.LdapServer>,
'root': <Application at >,
'template': <ImplicitAcquirerWrapper object at 0xb101450>,
'traverse_subpath': [],
'user': <PropertiedUser 'admin'>,
'view': <Products.Five.metaclass.ServerAddForm object at 0x120b73d0>,
'views': <zope.app.pagetemplate.viewpagetemplatefile.ViewMapper object
at 0xb101390>}
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 zope.app.pagetemplate.simpleviewclass, line 44, in __call__
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.CacheSetup.patch_cmf, line 126, in PT_pt_render
Module zope.tal.talinterpreter, line 271, in __call__
Module zope.tal.talinterpreter, line 346, in interpret
Module zope.tal.talinterpreter, line 586, in do_setLocal_tal
Module zope.tales.tales, line 696, in evaluate
- URL: index
- Line 2, Column 0
- Expression: <PathExpr standard:'context/plone_portal_state/portal_url'>
- Names:
{'container': <Products.Five.metaclass.ServerAdding object at 0x120b75d0>,
'context': <Products.Five.metaclass.ServerAdding object at 0x120b75d0>,
'default': <object object at 0x7fb9821d9200>,
'here': <Products.Five.metaclass.ServerAdding object at 0x120b75d0>,
'loop': {},
'nothing': None,
'options': {'args': ()},
'repeat': <Products.PageTemplates.Expressions.SafeMapping object at
0xb151b90>,
'request': <HTTPRequest,
URL=http://10.0.0.3:8080/Plone/+ldapserver/plone.LdapServer>,
'root': <Application at >,
'template': <ImplicitAcquirerWrapper object at 0xb15f190>,
'traverse_subpath': [],
'user': <PropertiedUser 'admin'>,
'view': <Products.Five.viewlet.viewlet.SimpleViewletClass from
/opt/plone/zeocluster/parts/svnproducts/naz.umbrella/naz/umbrella/browser/templates/umbrella_footer.pt
object at 0x7fb971a0f4d0>,
'views': <zope.app.pagetemplate.viewpagetemplatefile.ViewMapper object
at 0xb15fdd0>}
Module zope.tales.expressions, line 217, in __call__
Module Products.PageTemplates.Expressions, line 155, in _eval
Module zope.tales.expressions, line 124, in _eval
Module Products.PageTemplates.Expressions, line 105, in
trustedBoboAwareZopeTraverse
Module zope.traversing.adapters, line 164, in traversePathElement
- __traceback_info__: (<Products.Five.metaclass.ServerAdding object at
0x120b75d0>, 'plone_portal_state')
Module zope.traversing.adapters, line 52, in traverse
- __traceback_info__: (<Products.Five.metaclass.ServerAdding object at
0x120b75d0>, 'plone_portal_state', ['portal_url'])
TraversalError: (<Products.Five.metaclass.ServerAdding object at 0x120b75d0>,
'plone_portal_state')
Best wishes,
Michael A. Smith
Web & Digital / Academic Technologies Manager
Nazareth College
_______________________________________________
Product-Developers mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/product-developers