Bug 490285 - Find Users fails when hitting users with non-english characters in Last Name
Summary: Find Users fails when hitting users with non-english characters in Last Name
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: freeIPA
Classification: Retired
Component: WebUI
Version: 1.2
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Rob Crittenden
QA Contact: Chandrasekar Kannan
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-03-14 20:15 UTC by Mathias Nicolajsen Kjærgaard
Modified: 2015-01-04 23:37 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-02-16 18:52:38 UTC
Embargoed:


Attachments (Terms of Use)

Description Mathias Nicolajsen Kjærgaard 2009-03-14 20:15:50 UTC
Description of problem:
Find Users fails when hitting users with non-english characters in Last Name.
At least it fails with my name:

Mathias Nicolajsen Kjærgaard


Version-Release number of selected component (if applicable):
ipa-server-1.2.1-1.fc10.i386


How reproducible:


Steps to Reproduce:
1. open https://ipaserver/ipa/ui/user/list
2. Enter name of user with the character "æ" in Last Name 
3. Submit search
  
Actual results:
An unexpected error occured
HTTP Error Message:

500 - Internal Server Error

Expected results:
A user list containing the user with the given username

Additional info:
From /var/log/ipa_error.log:

2009-03-14 21:08:46,965 root INFO IPA: find_users 'mnk'
2009-03-14 21:08:47,068 ipagui.controllers ERROR 500 error (500 - Internal Server Error) for request 'GET /ipa/ui/user/list'
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/CherryPy-2.3.0-py2.5.egg/cherrypy/_cphttptools.py", line 121, in _run
    self.main()
  File "/usr/lib/python2.5/site-packages/CherryPy-2.3.0-py2.5.egg/cherrypy/_cphttptools.py", line 264, in main
    body = page_handler(*virtual_path, **self.params)
  File "<string>", line 3, in list
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 360, in expose
    *args, **kw)
  File "<string>", line 5, in run_with_transaction
  File "/usr/lib/python2.5/site-packages/turbogears/database.py", line 359, in so_rwt
    retval = func(*args, **kw)
  File "<string>", line 5, in _expose
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 373, in <lambda>
    mapping, fragment, args, kw)))
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 423, in _execute_func
    return _process_output(output, template, format, content_type, mapping, fragment)
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 88, in _process_output
    fragment=fragment)
  File "/usr/lib/python2.5/site-packages/turbogears/view/base.py", line 159, in render
    return engine.render(**kw)
  File "/usr/lib/python2.5/site-packages/turbokid/kidsupport.py", line 206, in render
    output=output, format=format)
  File "/usr/lib/python2.5/site-packages/kid/__init__.py", line 301, in serialize
    raise_template_error(module=self.__module__)
  File "/usr/lib/python2.5/site-packages/kid/__init__.py", line 299, in serialize
    return serializer.serialize(self, encoding, fragment, format)
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 107, in serialize
    text = ''.join(self.generate(stream, encoding, fragment, format))
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 629, in generate
    for ev, item in self.apply_filters(stream, format):
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 165, in format_stream
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 221, in _coalesce
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 477, in inject_meta_tags
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/turbogears/i18n/kidutils.py", line 71, in i18n_filter
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 179, in _track
    for p in stream:
  File "/usr/lib/python2.5/site-packages/kid/filter.py", line 32, in apply_matches
    item = stream.expand()
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 108, in expand
    for ev, item in self._iter:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 179, in _track
    for p in stream:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 221, in _coalesce
    for ev, item in stream:
  File "/usr/share/ipa/ipagui/templates/userlist.py", line 180, in _pull
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 13: ordinal not in range(128)
Error location in template file '/usr/share/ipa/ipagui/templates/userlist.kid'
between line 59, column 20 and line 63, column 16:
                    <a
...
                    />

Comment 1 Mathias Nicolajsen Kjærgaard 2009-03-14 20:25:21 UTC
This bug might be related to bug #454076, but it is not the same, since I can edit the given user just fine.

Comment 2 Rob Crittenden 2009-03-16 15:27:08 UTC
Support for non-ascii characters is very limited at the moment. We are addressing this in the next release.


Note You need to log in before you can comment on or make changes to this bug.