[Catalyst] Help needed with Unicode

Mario Minati mario.minati at googlemail.com
Tue Mar 20 15:40:57 GMT 2007


Hello @all,

now it's my time to make my Catalyst app Unicode aware and I (like some 
others) ran into a Unicode problem.

I read the article from the calender 2006 and read the unicode chapter in 
Daminas "Advanced Perl Programming" hence I don't manage to get it working.

What I have:
- Catalyst, TT, DBIx::Class app that needs to deal with german umlauts.
- Plugin Unicode::Encoding loaded.
- Postgres database with UTF8 enabled (ENCODING = 'UTF8').
- Browser is FF2, it says encoding is UTF8, mode is standard compliant 
(translated from what it says in german).
- Plugin I18N loaded, with a german po file.
- Useing the inwork HTML-Widget replacement FormFu with I18N and a german 
language module in lexicon style.
- No german umlauts are html-escaped (that's why we make unicode, right?)

Now my problems:
- text with german umlauts from tt templates is shown as expected
- text with german umlauts from po file is shown as expected
- text with german umlauts from lexicon style pm files is currupted, it is 
shown as expected, when Unicode::Encoding is disabled, so this might due to a 
double encoding - but why? 
(lexicon = perlmode loading = encoding by default, po file = no encoding at 
first place ?, I realy don't know.)
- when submitting form input Catalyst dies with an error:
[info] *** Request 207 (0.139/s) [14828] [Tue Mar 20 16:29:05 2007] ***
[error] Caught exception in engine "utf8 "\xE4" does not map to Unicode 
at /usr/local/share/perl/5.8.8/Catalyst/Plugin/Unicode/Encoding.pm line 73."
(The formdata is submitted through ajax/xmlhttprequest, is that a possible 
source for that problem?)

I would be very thankfull for every hint on how to hunt these things down.

By the way I usually send some debug messages with 'warn' to the console, as 
catalysts logging is not available in other modules (is it somehow?). Is that 
unicode save, or do I see crap on the console?

Greets,
Mario Minati



More information about the Catalyst mailing list