the error stack (before my ugly fix in sprox):
URL:
http://localhost:8080/adminPriority/activitiess/File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\weberror-0.10.3-py2.7.egg\\weberror\\evalexception.py', line 431 in respond
app_iter = self.application(environ, detect_start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\turbogears2-2.1.3-py2.7.egg\\tg\\configuration.py', line 825 in remover
return app(environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\repoze.tm2-1.0b2-py2.7.egg\\repoze\\tm\\__init__.py', line 24 in __call__
result = self.application(environ, save_status_and_headers)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\repoze.who-1.0.19-py2.7.egg\\repoze\\who\\middleware.py', line 107 in __call__
app_iter = app(environ, wrapper.wrap_start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\toscawidgets-0.9.12-py2.7.egg\\tw\\core\\middleware.py', line 46 in __call__
return self.wsgi_app(environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\toscawidgets-0.9.12-py2.7.egg\\tw\\core\\middleware.py', line 72 in wsgi_app
resp = req.get_response(self.application)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\webob-1.0.8-py2.7.egg\\webob\\request.py', line 1053 in get_response
application, catch_exc_info=False)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\webob-1.0.8-py2.7.egg\\webob\\request.py', line 1022 in call_application
app_iter = application(self.environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\toscawidgets-0.9.12-py2.7.egg\\tw\\core\\resource_injector.py', line 70 in _injector
resp = req.get_response(app)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\webob-1.0.8-py2.7.egg\\webob\\request.py', line 1053 in get_response
application, catch_exc_info=False)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\webob-1.0.8-py2.7.egg\\webob\\request.py', line 1022 in call_application
app_iter = application(self.environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\beaker-1.5.4-py2.7.egg\\beaker\\middleware.py', line 73 in __call__
return
self.app(environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\beaker-1.5.4-py2.7.egg\\beaker\\middleware.py', line 152 in __call__
return self.wrap_app(environ, session_start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\routes-1.12.3-py2.7.egg\\routes\\middleware.py', line 131 in __call__
response =
self.app(environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\wsgiapp.py', line 107 in __call__
response = self.dispatch(controller, environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\wsgiapp.py', line 312 in dispatch
return controller(environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\priority-agent\\priorityagent\\lib\\base.py', line 31 in __call__
return TGController.__call__(self, environ, start_response)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\controllers\\core.py', line 211 in __call__
response = self._dispatch_call()
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\controllers\\core.py', line 162 in _dispatch_call
response = self._inspect_call(func)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\controllers\\core.py', line 105 in _inspect_call
result = self._perform_call(func, args)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\turbogears2-2.1.3-py2.7.egg\\tg\\controllers\\dispatcher.py', line 254 in _perform_call
r = self._call(func, params, remainder=remainder)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\turbogears2-2.1.3-py2.7.egg\\tg\\controllers\\decoratedcontroller.py', line 116 in _call
output = controller(*remainder, **dict(params))
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\tgext.crud-0.3.12-py2.7.egg\\tgext\\crud\\controller.py', line 120 in get_all
values = self.table_filler.get_value(**kw)
File 'D:\\Python27\\learn\\agent\\agent\\lib\\site-packages\\sprox-0.7rc1-py2.7.egg\\sprox\\fillerbase.py', line 221 in get_value
value = unicode(value, encoding='utf-8')
UnicodeDecodeError: 'utf8' codec can't decode byte 0xee in position 0: invalid continuation byte
the fix that solves it: change sprox fillebase.py get_value method
like this:
if isinstance(value, str):
try: # added this to fix unicode problem in CRUD forms TODO:better implentation
value = unicode(value, encoding='utf-8')
except UnicodeDecodeError: # overriding the default sprox behavior
#TODO:add chardet checking here
#return
value = unicode(value, encoding='windows-1255')