представление браузера zcml for = "IPloneSiteRoot" возвращает 404 - PullRequest
2 голосов
/ 28 сентября 2011

Интересно, видел ли кто-нибудь еще это раньше:

У меня есть следующий 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"
/>

Если я удалю эти другие представления, оставив в системе только одно представление с именем = "workflow_action" (для IPloneSiteRoot или "*"), результат будет таким же.

Это похоже на очень простое представление - я не знаю, какую еще информацию я могу здесь разместить?

Использование Plone 4.0.7.

это должен быть я!?

Ответы [ 2 ]

3 голосов
/ 28 сентября 2011

Скорее всего, ваш браузер вызывает исключение в методе __init__(), поэтому исключение игнорируется и никогда не отображается, а результатом обычно является ошибка 404.

0 голосов
/ 20 января 2013

У меня есть похожая проблема, когда я добавляю портлет Solgema.NavigationPortlet в папку Private State, затем я обнаружил, что браузер: страница navTreeitem в navigation.py вызвала ошибку KeyError, которая вызывает ответ 404 для клиентского браузера.

Спасибо за ответ Джакомо.

...