我想知道其他人之前是否见过这个:
我有以下ZCML:
<browser:page
for="*"
name="workflow_action"
class=".bika_listing.WorkflowAction"
permission="zope.Public"
/>
当我尝试访问siteroot / workflow_action时,Plone告诉我“这个页面似乎不存在......”
正在读取ZCML - 如果我在ZCML中导致错误,则Plone无法启动。
我尝试过=“Products.CMFPlone.interfaces.IPloneSiteRoot”,结果相同。
WorkflowAction中的代码根本没有被调用 - 如果我将pdb放在__call__
中,它就不会被激活。
我有两个类似的ZCML定义用于不同的上下文,它们工作正常,看起来像这样:
<browser:page
for="bika.lims.interfaces.IAnalysisRequest"
name="workflow_action"
class=".analysisrequest.WorkflowAction"
permission="zope.Public"
/>
如果我删除这些其他视图,只在系统中保留一个名为“工作流”的视图(IPloneSiteRoot或“*”),结果是相同的。
这看起来很简单 - 我不知道我可以在这里提供哪些其他信息?
使用Plone 4.0.7。
一定是我!?
答案 0 :(得分:3)
很可能您的browserview在__init__()
方法中引发异常,因此异常被忽略并且从不显示,结果通常是404错误。
答案 1 :(得分:0)
在私有状态文件夹中添加Solgema.NavigationPortlet portlet时遇到类似的问题,然后我发现浏览器:navigation.py中的页面navTreeitem引发了一个KeyError,导致客户端浏览器发出404响应。
感谢Giacomo的回答。