Server error when trying to add new activity category with non-latin name

Bug #383416 reported by Krasheninnikov Vitaliy (krushik)
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SchoolTool
Fix Released
High
Douglas Cerna

Bug Description

Exception

  UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
Traceback

  File "/home/krushik/.buildout/eggs/zope.publisher-3.4.6-py2.5.egg/zope/publisher/publish.py", line 133, in publish
  result = publication.callObject(request, obj)
File "/home/krushik/.buildout/eggs/zope.app.publication-3.4.3-py2.5.egg/zope/app/publication/zopepublication.py", line 167, in callObject
  return mapply(ob, request.getPositionalArguments(), request)
File "/home/krushik/.buildout/eggs/zope.publisher-3.4.6-py2.5.egg/zope/publisher/publish.py", line 108, in mapply
  return debug_call(obj, args)
Extra information: <zope.app.pagetemplate.simpleviewclass.SimpleViewClass from /home/krushik/schooltool_sandbox/schooltool.gradebook/src/schooltool/gradebook/browser/categories.pt object at 0xb41de8c>
File "/home/krushik/.buildout/eggs/zope.publisher-3.4.6-py2.5.egg/zope/publisher/publish.py", line 114, in debug_call
  return obj(*args)
File "/home/krushik/.buildout/eggs/zope.app.pagetemplate-3.4.1-py2.5.egg/zope/app/pagetemplate/simpleviewclass.py", line 44, in __call__
  return self.index(*args, **kw)
File "/home/krushik/.buildout/eggs/zope.app.pagetemplate-3.4.1-py2.5.egg/zope/app/pagetemplate/viewpagetemplatefile.py", line 83, in __call__
  return self.im_func(im_self, *args, **kw)
File "/home/krushik/.buildout/eggs/zope.app.pagetemplate-3.4.1-py2.5.egg/zope/app/pagetemplate/viewpagetemplatefile.py", line 51, in __call__
  sourceAnnotations=getattr(debug_flags, 'sourceAnnotations', 0),
File "/home/krushik/.buildout/eggs/zope.pagetemplate-3.4.0-py2.5.egg/zope/pagetemplate/pagetemplate.py", line 115, in pt_render
  strictinsert=0, sourceAnnotations=sourceAnnotations)()
Template "/home/krushik/schooltool_sandbox/schooltool.gradebook/src/schooltool/gradebook/browser/categories.pt"
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 271, in __call__
  self.interpret(self.program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 891, in do_useMacro
  self.interpret(macro)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 536, in do_optTag_tal
  self.do_optTag(stuff)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 521, in do_optTag
  return self.no_tag(start, program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 516, in no_tag
  self.interpret(program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 957, in do_defineSlot
  self.interpret(block)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 536, in do_optTag_tal
  self.do_optTag(stuff)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 521, in do_optTag
  return self.no_tag(start, program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 516, in no_tag
  self.interpret(program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 949, in do_defineSlot
  self.interpret(slot)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 536, in do_optTag_tal
  self.do_optTag(stuff)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 521, in do_optTag
  return self.no_tag(start, program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 516, in no_tag
  self.interpret(program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 891, in do_useMacro
  self.interpret(macro)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 536, in do_optTag_tal
  self.do_optTag(stuff)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 521, in do_optTag
  return self.no_tag(start, program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 516, in no_tag
  self.interpret(program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 534, in do_optTag_tal
  self.no_tag(stuff[-2], stuff[-1])
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 516, in no_tag
  self.interpret(program)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 346, in interpret
  handlers[opcode](self, args)
File "/home/krushik/.buildout/eggs/zope.tal-3.4.1-py2.5.egg/zope/tal/talinterpreter.py", line 745, in do_insertStructure_tal
  structure = self.engine.evaluateStructure(expr)
File "/home/krushik/.buildout/eggs/zope.tales-3.4.0-py2.5.egg/zope/tales/tales.py", line 696, in evaluate
  return expression(self)
Template "/home/krushik/schooltool_sandbox/schooltool/src/schooltool/skin/templates/widget_macros.pt", line 11, column 4
  Expression: <PathExpr standard:u'widget'>
File "/home/krushik/.buildout/eggs/zope.tales-3.4.0-py2.5.egg/zope/tales/expressions.py", line 217, in __call__
  return self._eval(econtext)
File "/home/krushik/.buildout/eggs/zope.tales-3.4.0-py2.5.egg/zope/tales/expressions.py", line 211, in _eval
  return ob()
File "/home/krushik/.buildout/eggs/zope.app.form-3.4.1-py2.5.egg/zope/app/form/browser/itemswidgets.py", line 332, in __call__
  contents.append(self._div('value', self.renderValue(value)))
File "/home/krushik/.buildout/eggs/zope.app.form-3.4.1-py2.5.egg/zope/app/form/browser/itemswidgets.py", line 498, in renderValue
  rendered_items = self.renderItems(value)
File "/home/krushik/.buildout/eggs/zope.app.form-3.4.1-py2.5.egg/zope/app/form/browser/itemswidgets.py", line 493, in renderItems
  return self.renderItemsWithValues(values)
File "/home/krushik/.buildout/eggs/zope.app.form-3.4.1-py2.5.egg/zope/app/form/browser/itemswidgets.py", line 389, in renderItemsWithValues
  cssClass)
File "/home/krushik/.buildout/eggs/zope.app.form-3.4.1-py2.5.egg/zope/app/form/browser/itemswidgets.py", line 401, in renderItem
  cssClass=cssClass)
File "/home/krushik/.buildout/eggs/zope.app.form-3.4.1-py2.5.egg/zope/app/form/browser/widget.py", line 535, in renderElement
  return u"%s>%s</%s>" % (renderTag(tag, **kw), contents, tag)
File "/home/krushik/.buildout/eggs/zope.app.form-3.4.1-py2.5.egg/zope/app/form/browser/widget.py", line 522, in renderTag
  attr_list.append(u'%s=%s' % (key, quoteattr(unicode(value))))

Changed in schooltool:
assignee: nobody → Alan Elkner (aelkner)
importance: Undecided → High
milestone: none → karmic
Changed in schooltool:
assignee: Alan Elkner (aelkner) → Douglas Cerna (replaceafill)
status: New → In Progress
Changed in schooltool:
status: In Progress → Fix Committed
Changed in schooltool:
milestone: karmic → 2009.4.14
Changed in schooltool:
status: Fix Committed → Fix Released
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.