I tried to use my own custom documents. The usual Python ones are
defined in config/middleware.py so I modified this function:

def document(self):
        """
        Change this method to change how error documents are displayed
        """
        page = error_document_template % {
            'prefix': get_prefix(request.environ),
            'code': request.params.get('code', ''),
            'message': request.params.get('message', ''),
        }
        #return Response(page)
        return render_response('error.html')

Pylons spat a Unicode error at me despite the fact that I used magical
encoding at the top of the file thusly:

# encoding: utf-8

this is the loooog traceback:

ine 128, in __call__
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\registry.py", li
ne 327, in __call__
    return self.app(environ, start_response)
    app_iter = self.application(environ, start_response)
  File "c:\python24\lib\site-packages\Beaker-0.6.3-py2.4.egg\beaker
\session.py",
 line 95, in __call__
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\recursive.py", l
ine 84, in __call__
    response = self.wrap_app(environ, session_start_response)
    return middleware(environ, start_response)
  File "c:\python24\lib\site-packages\Routes-1.6.3-py2.4.egg\routes
\middleware.p
y", line 101, in __call__
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\recursive.py", l
ine 47, in __call__
    response = self.app(environ, start_response)
    return self.app(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 84, in __call__
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\errordocument.py
", line 84, in __call__
    response = self.dispatch(controller, environ, start_response)
    return self.app(environ, keep_status_start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 182, in dispatch
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\recursive.py", l
ine 80, in __call__
    return controller(environ, start_response)
    return self.application(environ, start_response)
  File "D:\Projects\Pylons_projects\gameolymp\gameolymp\lib\base.py",
line 15, i
n __call__
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\errordocument.py
", line 185, in __call__
    return WSGIController.__call__(self, environ, start_response)
    app_iter = self.application(environ, change_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 214, in __call__
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\evalexception\mi
ddleware.py", line 186, in __call__
    return self.respond(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\error.py", l
ine 211, in respond
    response = self._dispatch_call()
    return self.application(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 161, in _dispatch_call
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\httpexceptions.p
y", line 633, in __call__
    response = self._inspect_call(func)
    self.send_http_response, catch=HTTPException)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 135, in _inspect_call
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\wsgilib.py", lin
e 225, in catch_errors_app
    result = func(**args)
    app_iter = application(environ, start_response)
  File "D:\Projects\Pylons_projects\gameolymp\gameolymp\controllers
\error.py", l
ine 24, in document
  File "c:\python24\lib\site-packages\PasteDeploy-1.3-py2.4.egg\paste
\deploy\con
fig.py", line 164, in __call__
    return render_response('error.html')
    app_iter = self.application(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 314, in render_response
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 261, in __call__
    response = pylons.Response(render(*args, **kargs))
    return self.app(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 300, in render
  File "c:\python24\lib\site-packages\Beaker-0.6.3-py2.4.egg\beaker
\cache.py", l
ine 128, in __call__
    format=format, namespace=kargs, **cache_args)
    return self.app(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 206, in render
  File "c:\python24\lib\site-packages\Beaker-0.6.3-py2.4.egg\beaker
\session.py",
 line 95, in __call__
    return engine_config['engine'].render(namespace,
template=full_path,
    response = self.wrap_app(environ, session_start_response)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako\ext
\turbogears.p
y", line 36, in render
  File "c:\python24\lib\site-packages\Routes-1.6.3-py2.4.egg\routes
\middleware.p
y", line 101, in __call__
    template = self.load_template(template)
    response = self.app(environ, start_response)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako\ext
\turbogears.p
y", line 32, in load_template
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 84, in __call__
    return self.lookup.get_template(templatename)
    response = self.dispatch(controller, environ, start_response)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lookup.py", line
 68, in get_template
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 182, in dispatch
    return self.__load(srcfile, uri)
    return controller(environ, start_response)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lookup.py", line
 110, in __load
  File "D:\Projects\Pylons_projects\gameolymp\gameolymp\lib\base.py",
line 15, i
n __call__
    self.__collection[uri] = Template(uri=uri,
filename=posixpath.normpath(filen
ame), lookup=self, module_filename=(self.modulename_callable is not
None and sel
f.modulename_callable(filename, uri) or None), **self.template_args)
    return WSGIController.__call__(self, environ, start_response)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\template.py", li
ne 69, in __init__
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 214, in __call__
    _compile_module_file(self, file(filename).read(), filename, path)
    response = self._dispatch_call()
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\template.py", li
ne 190, in _compile_module_file
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 161, in _dispatch_call
    node = Lexer(text, filename,
input_encoding=template.input_encoding, preproc
essor=template.preprocessor).parse()
    response = self._inspect_call(func)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lexer.py", line
124, in parse
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 135, in _inspect_call
    result = func(**args)
  File "D:\Projects\Pylons_projects\gameolymp\gameolymp\controllers
\error.py", l
ine 24, in document
    raise exceptions.CompileException("Unicode decode operation of
encoding '%s'
 failed" % self.encoding, 0, 0, self.filename)
    return render_response('error.html')
CompileException: Unicode decode operation of encoding 'utf-8' failed
in file 'D
:\Projects\Pylons_projects\gameolymp\gameolymp\templates/error.html'
at line: 0
char: 0
- --------------------------------------- File "c:\python24\lib\site-
packages\Py
lons-0.9.5-py2.4.egg\pylons\templating.py", line 314, in
render_response

    response = pylons.Response(render(*args, **kargs))
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 300, in render
    format=format, namespace=kargs, **cache_args)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 206, in render
    return engine_config['engine'].render(namespace,
template=full_path,
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako\ext
\turbogears.p
y", line 36, in render
    template = self.load_template(template)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako\ext
\turbogears.p
y", line 32, in load_template
    return self.lookup.get_template(templatename)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lookup.py", line
 68, in get_template
    return self.__load(srcfile, uri)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lookup.py", line
 110, in __load
    self.__collection[uri] = Template(uri=uri,
filename=posixpath.normpath(filen
ame), lookup=self, module_filename=(self.modulename_callable is not
None and sel
f.modulename_callable(filename, uri) or None), **self.template_args)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\template.py", li
ne 69, in __init__
    _compile_module_file(self, file(filename).read(), filename, path)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\template.py", li
ne 190, in _compile_module_file
    node = Lexer(text, filename,
input_encoding=template.input_encoding, preproc
essor=template.preprocessor).parse()
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lexer.py", line
124, in parse
    raise exceptions.CompileException("Unicode decode operation of
encoding '%s'
 failed" % self.encoding, 0, 0, self.filename)
CompileException: Unicode decode operation of encoding 'utf-8' failed
in file 'D
:\Projects\Pylons_projects\gameolymp\gameolymp\templates/error.html'
at line: 0
char: 0
----------------------------------------
----------------------------------------
Exception happened during processing of request from ('127.0.0.1',
2343)
Traceback (most recent call last):
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\httpserver.py",
line 592, in process_request_in_thread
    self.finish_request(request, client_address)
  File "C:\Python24\lib\SocketServer.py", line 254, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "C:\Python24\lib\SocketServer.py", line 521, in __init__
    self.handle()
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\httpserver.py",
line 400, in handle
    BaseHTTPRequestHandler.handle(self)
  File "C:\Python24\lib\BaseHTTPServer.py", line 316, in handle
    self.handle_one_request()
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\httpserver.py",
line 395, in handle_one_request
    self.wsgi_execute()
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\httpserver.py",
line 266, in wsgi_execute
    self.wsgi_start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\cascade.py", lin
e 92, in __call__
    return self.apps[-1](environ, start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\registry.py", li
ne 327, in __call__
    app_iter = self.application(environ, start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\recursive.py", l
ine 84, in __call__
    return middleware(environ, start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\recursive.py", l
ine 47, in __call__
    return self.app(environ, start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\errordocument.py
", line 84, in __call__
    return self.app(environ, keep_status_start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\recursive.py", l
ine 80, in __call__
    return self.application(environ, start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\errordocument.py
", line 185, in __call__
    app_iter = self.application(environ, change_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\evalexception\mi
ddleware.py", line 186, in __call__
    return self.respond(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\error.py", l
ine 211, in respond
    return self.application(environ, start_response)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\httpexceptions.p
y", line 633, in __call__
    self.send_http_response, catch=HTTPException)
  File "c:\python24\lib\site-packages\Paste-1.3-py2.4.egg\paste
\wsgilib.py", lin
e 225, in catch_errors_app
    app_iter = application(environ, start_response)
  File "c:\python24\lib\site-packages\PasteDeploy-1.3-py2.4.egg\paste
\deploy\con
fig.py", line 164, in __call__
    app_iter = self.application(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 261, in __call__
    return self.app(environ, start_response)
  File "c:\python24\lib\site-packages\Beaker-0.6.3-py2.4.egg\beaker
\cache.py", l
ine 128, in __call__
    return self.app(environ, start_response)
  File "c:\python24\lib\site-packages\Beaker-0.6.3-py2.4.egg\beaker
\session.py",
 line 95, in __call__
    response = self.wrap_app(environ, session_start_response)
  File "c:\python24\lib\site-packages\Routes-1.6.3-py2.4.egg\routes
\middleware.p
y", line 101, in __call__
    response = self.app(environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 84, in __call__
    response = self.dispatch(controller, environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\wsgiapp.py",
 line 182, in dispatch
    return controller(environ, start_response)
  File "D:\Projects\Pylons_projects\gameolymp\gameolymp\lib\base.py",
line 15, i
n __call__
    return WSGIController.__call__(self, environ, start_response)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 214, in __call__
    response = self._dispatch_call()
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 161, in _dispatch_call
    response = self._inspect_call(func)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\controllers.
py", line 135, in _inspect_call
    result = func(**args)
  File "D:\Projects\Pylons_projects\gameolymp\gameolymp\controllers
\error.py", l
ine 24, in document
    return render_response('error.html')
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 314, in render_response
    response = pylons.Response(render(*args, **kargs))
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 300, in render
    format=format, namespace=kargs, **cache_args)
  File "c:\python24\lib\site-packages\Pylons-0.9.5-py2.4.egg\pylons
\templating.p
y", line 206, in render
    return engine_config['engine'].render(namespace,
template=full_path,
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako\ext
\turbogears.p
y", line 36, in render
    template = self.load_template(template)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako\ext
\turbogears.p
y", line 32, in load_template
    return self.lookup.get_template(templatename)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lookup.py", line
 68, in get_template
    return self.__load(srcfile, uri)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lookup.py", line
 110, in __load
    self.__collection[uri] = Template(uri=uri,
filename=posixpath.normpath(filen
ame), lookup=self, module_filename=(self.modulename_callable is not
None and sel
f.modulename_callable(filename, uri) or None), **self.template_args)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\template.py", li
ne 69, in __init__
    _compile_module_file(self, file(filename).read(), filename, path)
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\template.py", li
ne 190, in _compile_module_file
    node = Lexer(text, filename,
input_encoding=template.input_encoding, preproc
essor=template.preprocessor).parse()
  File "c:\python24\lib\site-packages\mako-0.1.5-py2.4.egg\mako
\lexer.py", line
124, in parse
    raise exceptions.CompileException("Unicode decode operation of
encoding '%s'
 failed" % self.encoding, 0, 0, self.filename)
CompileException: Unicode decode operation of encoding 'utf-8' failed
in file 'D
:\Projects\Pylons_projects\gameolymp\gameolymp\templates/error.html'
at line: 0
char: 0
----------------------------------------

Could someone shed light on this?

Thanks


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to