Cannot traverse to /manage when running under Zope 2.13 and paster

Bug #680752 reported by nateaune
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Zope 2
Won't Fix
Undecided
Unassigned

Bug Description

I'm running Plone 4.0.1 under Zope 2.13 using paster, and when I go to http://localhost:8080, I can see the welcome text "Plone is up and running", but when I click the button to "Create a new Plone site" (http://localhost:8080/@@plone-addsite?site_id=Plone), I get a blank screen.

The same thing happens if I click on the "Zope Management Interface" link (http://localhost:8080/manage). In Lynx, these links give me a 401 error. Does this mean I need to authenticate using repoze.who?

Here is a traceback of the internal server error if I try to access http://localhost:8080/Plone

$ ./bin/paster serve zope2.ini
Starting server in PID 10230.
serving on 0.0.0.0:8080 view at http://127.0.0.1:8080
----------------------------------------
Exception happened during processing of request from ('24.218.26.40', 48847)
Traceback (most recent call last):
  File "/opt/wsgi/eggs/Paste-1.7.5.1-py2.6.egg/paste/httpserver.py", line 1068, in process_request_in_thread
    self.finish_request(request, client_address)
  File "/usr/lib/python2.6/SocketServer.py", line 322, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib/python2.6/SocketServer.py", line 617, in __init__
    self.handle()
  File "/opt/wsgi/eggs/Paste-1.7.5.1-py2.6.egg/paste/httpserver.py", line 442, in handle
    BaseHTTPRequestHandler.handle(self)
  File "/usr/lib/python2.6/BaseHTTPServer.py", line 329, in handle
    self.handle_one_request()
  File "/opt/wsgi/eggs/Paste-1.7.5.1-py2.6.egg/paste/httpserver.py", line 437, in handle_one_request
    self.wsgi_execute()
  File "/opt/wsgi/eggs/Paste-1.7.5.1-py2.6.egg/paste/httpserver.py", line 287, in wsgi_execute
    self.wsgi_start_response)
  File "/opt/wsgi/eggs/repoze.retry-1.0-py2.6.egg/repoze/retry/__init__.py", line 90, in __call__
    app_iter = self.application(environ, replace_start_response)
  File "/opt/wsgi/eggs/repoze.tm2-1.0a5-py2.6.egg/repoze/tm/__init__.py", line 23, in __call__
    result = self.application(environ, save_status_and_headers)
  File "/opt/wsgi/eggs/Zope2-2.13.0-py2.6.egg/ZPublisher/WSGIPublisher.py", line 219, in publish_module
    response = _publish(request, 'Zope2')
  File "/opt/wsgi/eggs/Zope2-2.13.0-py2.6.egg/ZPublisher/WSGIPublisher.py", line 181, in publish
    object = request.traverse(path, validated_hook=validated_hook)
  File "/opt/wsgi/eggs/Zope2-2.13.0-py2.6.egg/ZPublisher/BaseRequest.py", line 503, in traverse
    subobject = self.traverseName(object, entry_name)
  File "/opt/wsgi/eggs/Zope2-2.13.0-py2.6.egg/ZPublisher/BaseRequest.py", line 348, in traverseName
    ob2 = adapter.publishTraverse(self, name)
  File "/usr/lib/plone40/eggs/Plone-4.0.1-py2.6.egg/Products/CMFPlone/browser/admin.py", line 39, in publishTraverse
    return DefaultPublishTraverse.publishTraverse(self, request, name)
  File "/opt/wsgi/eggs/Zope2-2.13.0-py2.6.egg/ZPublisher/BaseRequest.py", line 105, in publishTraverse
    raise e
NotFound: <h2>Site Error</h2>
  <p>An error was encountered while publishing this resource.
  </p>
  <p><strong>Resource not found</strong></p>

  Sorry, the requested resource does not exist.<p>Check the URL and try again.</p><p><b>Resource:</b> Plone
GET</p>
  <hr noshade="noshade"/>

  <p>Troubleshooting Suggestions</p>

  <ul>
  <li>The URL may be incorrect.</li>
  <li>The parameters passed to this resource may be incorrect.</li>
  <li>A resource that this resource relies on may be
      encountering an error.</li>
  </ul>

  <p>For more detailed information about the error, please
  refer to the error log.
  </p>

  <p>If the error persists please contact the site maintainer.
  Thank you for your patience.
  </p>
----------------------------------------

Please note that I did not use the "addzope2user" script, because I presume that the Zope admin user has already created for me with the plone.recipe.zope2instance buildout recipe.

Tags: paster plone wsgi
Revision history for this message
nateaune (natea) wrote :

Here are the response headers when I click on the "Zope Management Interface" link:

http://174.143.150.34:8080/manage_main

GET /manage_main HTTP/1.1
Host: 174.143.150.34:8080
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US;
rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://174.143.150.34:8080/

HTTP/1.0 401 Unauthorized
Server: PasteWSGIServer/0.5 Python/2.6.4
Date: Sat, 27 Nov 2010 01:08:08 GMT, Sat, 27 Nov 2010 01:08:08 GMT
X-Powered-By: Zope (www.zope.org), Python (www.python.org)
Content-Length: 0
Connection: close

Revision history for this message
Hanno Schlichting (hannosch) wrote :

You need to have repoze.who as part of the WSGI pipeline to handle Unauthorized exceptions.

Changed in zope2:
status: New → Won't Fix
Revision history for this message
Matthew Wilkes (matthew-matthewwilkes) wrote :

This has been fixed in r123219.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.