Nuxeo mailing list archives
[CPS-devel] Re: UnicodeDecodeError indexing translated
titleof document.
JoseLuis de la Rosa Triviño
joseluis.rosa at iavantefundacion.com
Fri Jun 2 18:03:30 CEST 2006
Hi again,
I have two use cases where I got errors:
The first one:
{{{
title = mcat('title_ipractice_' + btool.ptool.CONTENTS_ID)
title = title.encode('iso8859-15')
docDef = {TITLE:title, DESCRIPT:'', HIDDE:0}
}}}
with the encoding proposed by Yves works fine.
The second use case, where I didn't have such luck is:
{{{
4 title = object.title_or_id()
5 title = title.encode('iso8859-15')
6 username = member.getProperty('fullname')
7 username = username.encode('iso8859-15')
8 logTitle = username + mcat(action + '_by') + title
9 logTitle = logTitle.encode('iso8859-15')
}}}
where title is the title of a document which is being created in the current transaction (I'm implementing a who-did-what system using portal_eventservice).
I tried to encode the title using utf8, iso8859-15 and latin-1 but this errors persists:
{{{
File "Script (Python)", line 5, in getTranslatedLogMessage
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf3 in position 1: ordinal not in range(128)
> /root/instances/saludinnova2/Script (Python)(7)getTranslatedLogMessage()
}}}
The snippet above works well without any statement related to title or with an ascii title.
I used iso8859-15 because is the encoding that I use in my web browser but I'm not sure if this is what I should use in the code or if I should ask what encoding is currently being used in the title. How may I do that?
Thank you very much for your help.
JoseLuis de la Rosa Triviño
Becario Área de Sistemas de Información
FUNDACIÓN IAVANTE
joseluis.rosa at iavantefundacion.com
Tel. 951 015 300
Este correo electrónico y, en su caso, cualquier fichero anexo, contiene información confidencial exclusivamente dirigida a su(s) destinatario(s). Toda copia o divulgación deberá ser autorizada por IAVANTE.
This e-mail and any attachments are confidential and exclusively directed to its adressee(s). Any copy or distribution will have to be authorized by IAVANTE.
-----Mensaje original-----
De: Julien Anguenot [mailto:ja at nuxeo.com]
Enviado el: viernes, 02 de junio de 2006 14:33
Para: Yves Bastide
CC: cps-devel at lists.nuxeo.com
Asunto: Re: [CPS-devel] Re: UnicodeDecodeError indexing translated titleof document.
Yves Bastide wrote:
> JoseLuis de la Rosa Triviño wrote:
> [...]
>> UnicodeDecodeError: 'ascii' codec can't decode byte 0xed in position
>> 10: ordinal not in range(128)
>>> /opt/zope2.9/lib/python/Products/PluginIndexes/common/UnIndex.py(207)insertForwardIndexEntry()
>>>
>> -> indexRow = self._index.get(entry, _marker)
>> (Pdb) entry
>> u'Carlos Gonzalez created aaaaaaaaaaaaaa'
>
> Your title is an Unicode string; you could try converting it to a string
> in your string:
>
> title = mcat('title_' + btool.ptool.CONTENTS_ID)
> + title = title.encode('iso8859-15')
> docDef = {TITLE:title, DESCRIPT:'', HIDDE:0}
>
>
> (perhaps testing first that title is really unicode)
yup but it seems that translation_service is now returning unicode
strings. (I didn't follow the changes recently)
You may want to check this document to deal with your unicode conversion :
http://www.reportlab.com/i18n/python_unicode_tutorial.html
Zope2 is a real pain when it comes to unicode...
Keep us posted please.
J.
--
Julien Anguenot | Nuxeo R&D (Paris, France)
Open Source ECM - www.nuxeo.com
CPS Platform - http://www.cps-project.org
Mobile: +33 (0) 6 72 57 57 66
More information about the cps-devel
mailing list
This list archive provided by Nuxeo, the
leaders of open source ECM.
Check out the Nuxeo 5 open source,
standards-based ECM project.