[Grok-dev] Re: grok vs PostmortemDebuggingHTTP: 0-1

Philipp von Weitershausen philipp at weitershausen.de
Wed Aug 22 17:26:17 EDT 2007


Wichert Akkerman wrote:
> After upgrading grok to 0.10 in my buildout I can no longer use the
> PostmortemDebuggingHTTP server. A request to the Zope root drops me in
> pdb:

Right. Because the admin interface requires authorization. It seems that 
you haven't authorized yourself on that server/port yet. Any 
unauthorized access raises Unauthorized and you end up in pdb (instead 
of being deferred to a login screen). This isn't really grok's fault, 
this is just the way that the PostmortemDebuggingHTTP server works.


> zope.security.interfaces.Unauthorized:
> (<grok.admin.view.Index object at 0x9d990cc>, '__call__', 'grok.ManageApplications')
>> /local/buildout/eggs/grok-0.10-py2.4.egg/grok/publication.py(40)callObject()
> -> checker.check(ob, '__call__')
> 
> (Pdb) bt
>   /local/simplon/coinage/saturn/threading.py(442)__bootstrap()
> -> self.run()
>   /local/simplon/coinage/saturn/threading.py(422)run()
> -> self.__target(*self.__args, **self.__kwargs)
>   /local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/python/threadpool.py(148)_worker()
> -> context.call(ctx, function, *args, **kwargs)
>   /local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/python/context.py(59)callWithContext()
> -> return self.currentContext().callWithContext(ctx, func, *args, **kw)
>   /local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/python/context.py(37)callWithContext()
> -> return func(*args,**kw)
>   /local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/web2/wsgi.py(198)run()
> -> result = self.application(self.environment, self.startWSGIResponse)
>   /local/buildout/eggs/zope.app.wsgi-3.4.0b1dev_r75415-py2.4.egg/zope/app/wsgi/__init__.py(80)__call__()
> -> pdb.post_mortem(sys.exc_info()[2])
>   /local/buildout/eggs/zope.app.wsgi-3.4.0b1dev_r75415-py2.4.egg/zope/app/wsgi/__init__.py(54)__call__()
> -> request = publish(request, handle_errors=handle_errors)
>   /local/buildout/eggs/zope.publisher-3.5.0a1.dev_r78838-py2.4.egg/zope/publisher/publish.py(183)publish()
> -> request.close()  # Close database connections, etc.
>> /local/buildout/eggs/grok-0.10-py2.4.egg/grok/publication.py(40)callObject()
> -> checker.check(ob, '__call__')
> 
> Trying to continue results in a site error:
> 
> (Pdb) cont
> Traceback (most recent call last):
>   File "threading.py", line 422, in run
>     self.__target(*self.__args, **self.__kwargs)
>   File "/local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/python/threadpool.py", line 148, in _worker
>     context.call(ctx, function, *args, **kwargs)
>   File "/local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/python/context.py", line 59, in callWithContext
>     return self.currentContext().callWithContext(ctx, func, *args, **kw)
>   File "/local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/python/context.py", line 37, in callWithContext
>     return func(*args,**kw)
> --- <exception caught here> ---
>   File "/local/buildout/eggs/zope.app.twisted-3.4.0b1_r76119-py2.4.egg/twisted/web2/wsgi.py", line 198, in run
>     result = self.application(self.environment, self.startWSGIResponse)
>   File "/local/buildout/eggs/zope.app.wsgi-3.4.0b1dev_r75415-py2.4.egg/zope/app/wsgi/__init__.py", line 72, in __call__
>     return app.__call__(environ, start_response)
>   File "/local/buildout/eggs/zope.app.wsgi-3.4.0b1dev_r75415-py2.4.egg/zope/app/wsgi/__init__.py", line 54, in __call__
>     request = publish(request, handle_errors=handle_errors)
>   File "/local/buildout/eggs/zope.publisher-3.5.0a1.dev_r78838-py2.4.egg/zope/publisher/publish.py", line 133, in publish
>     result = publication.callObject(request, obj)
>   File "/local/buildout/eggs/grok-0.10-py2.4.egg/grok/publication.py", line 40, in callObject
>     checker.check(ob, '__call__')
> zope.security.interfaces.Unauthorized: (<grok.admin.view.Index object at 0x9d990cc>, '__call__', 'grok.ManageApplications')
> 
> I find PostmortemDebuggingHTTP to be a great tool to help me poke at things
> when they break, so this is a bit unfortunate.
> 
> Wichert.
> 


-- 
http://worldcookery.com -- Professional Zope documentation and training


More information about the Grok-dev mailing list