Page 1 of 2
SAC German Umlauts Problem
Posted: Wed Apr 12, 2006 2:52 am
by hch
I am running scalix 10 on SUSE OSS 10.0 and discovered a strange problem with umlauts in SAC. The language used is German.
After installation I can create Users with umlauts like öäüß without problems, but after a few restarts of apache and tomcat I cannot access the users with umlauts anymore in SAC displaying the message "Die Benutzerinformationen für den ausgewählten Benutzer konnten nicht geladen werden". Login and Outlook works for the user.
The only solution I found is to run installation again and reconfigure scalix Administration console. After doing so it works again until I restart apache and tomcat.
I did a plain default installation. Do I have to set a default charset in apache or tomcat for german language?
Posted: Wed Apr 12, 2006 4:05 pm
by florian
You need to make sure that from whatever environment your Tomcat is started, the LANG variable is set to use a UTF-8 character set.
I would recommend en_US.UTF-8.
Hope this helps,
Florian.
Posted: Thu Apr 13, 2006 5:02 am
by hch
I set the LANG variable to LANG=de_AT.UTF-8
output of locale:
LANG=de_AT.UTF-8
LC_CTYPE="de_AT.UTF-8"
LC_NUMERIC="de_AT.UTF-8"
LC_TIME="de_AT.UTF-8"
LC_COLLATE="de_AT.UTF-8"
LC_MONETARY="de_AT.UTF-8"
LC_MESSAGES="de_AT.UTF-8"
LC_PAPER="de_AT.UTF-8"
LC_NAME="de_AT.UTF-8"
LC_ADDRESS="de_AT.UTF-8"
LC_TELEPHONE="de_AT.UTF-8"
LC_MEASUREMENT="de_AT.UTF-8"
LC_IDENTIFICATION="de_AT.UTF-8"
LC_ALL=
It did not help. The problem still exists.
Posted: Thu Apr 13, 2006 5:15 am
by florian
Hi,
are you sure that tomcat is running in this environment as well?
The safest way to check would be:
1. Find out the Process ID of the Tomcat Java process:
Code: Select all
xanscalix:/etc/apache2/sites-enabled# lsof -i :8005
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
java 19624 root 40u IPv4 50424 TCP localhost:8005 (LISTEN)
Then run the following command to get a dump of this processes environment:
Code: Select all
cat /proc/19624/environ | tr "\0" "\n"
where 19624 must be replaced by the PID that you get from the output in the first command.
Does this provide the same result for the locale-relevant variables?
Thanks,
Florian.
Posted: Thu Apr 13, 2006 5:36 am
by hch
The output says that
LANG=de_DE.UTF-8 but
LC_ALL=POSIX
Maybe the LC_ALL setting is incorrect but how can I change it.
Posted: Thu Apr 13, 2006 5:39 am
by florian
could well be. for the time being, you might just stop tomcat "the hard way"
and then from the shell where you found your LC-variables and everything setup correctly just go to /opt/scalix-tomcat/bin and execute ./startup.sh from there.
Then, check again with the method described above. If correct, please try your SAC.
Let me know how it went because this might be something we should fix in our install in the lnot so long run.
-- Florian.
Posted: Thu Apr 13, 2006 5:46 am
by hch
Now it seems to work!
The only change is the LC_ALL variable is now set to
LC_ALL=de_DE.UTF-8
How can I make this variable persistent?
Posted: Thu Apr 13, 2006 5:49 am
by florian
I would suggest to edit /opt/scalix-tomcat/bin/setclasspath and put a
export LC_ALL=de_DE.UTF-8
near the beginning of the script, where the JAVA_HOME and JAVA_OPTS variables are set.
Thanks for your help in tracking this one down. I'll log a bug against our installation.
Florian.
Posted: Thu Apr 13, 2006 5:57 am
by hch
Thanks, its now persistent and should work for now!
Posted: Thu Aug 24, 2006 3:23 am
by the2nd
Just want to say that this worked for me too.
Thanks
Posted: Fri Aug 25, 2006 5:07 am
by reiner
I have tried to create an account with an umlaut before setting LC_ALL correctly. SAC said "unable to create..." but nevertheless the account was created with a ? instead of the umlaut. Now I'm unable to delete the account - what can I do?
Posted: Sat Aug 26, 2006 3:01 am
by florian
See a couple of other threads on the topic. please always search the forum!
You'll need to delete the account from the command line - you can use the "normalized" last game to do this, e.g. if this is "Günter Müller",
or
should work.
-- Florian.
Charset
Posted: Thu Jan 04, 2007 6:28 am
by fireking
Hello Guys!
So! I have read this topic and i have set it in my system but it is not working.
If i understand u exactly the charset is irrelevant so i have made these steps
1.) I have change /etc/environment
LANG=hu_HU.ISO-8859-2
LC_CTYPE=hu_HU.ISO-8859-2
LC_NUMERIC=hu_HU.ISO-8859-2
LC_TIME=hu_HU.ISO-8859-2
LC_COLLATE=hu_HU.ISO-8859-2
LC_MONETARY=hu_HU.ISO-8859-2
LC_MESSAGES=hu_HU.ISO-8859-2
LC_PAPER=hu_HU.ISO-8859-2
LC_NAME=hu_HU.ISO-8859-2
LC_ADDRESS=hu_HU.ISO-8859-2
LC_TELEPHONE=hu_HU.ISO-8859-2
LC_MEASUREMENT=hu_HU.ISO-8859-2
LC_IDENTIFICATION=hu_HU.ISO-8859-2
LC_ALL=hu_HU.ISO-8859-2
reboot
it was not work.
2.)
I have inserted 2 rows into these files: /etc/init.d/scalix, /etc/init.d/scalix-tomcat
export LC_ALL=hu_HU.ISO-8859-2
export LANG=hu_HU.ISO-8859-2
Then i have restarted it...and i was checking the process environment of omsmtpd because i have charset problem in the SMTP Header
The output is
cat /proc/2173/environ (omsmtpd)
SELINUX_INIT=YESCONSOLE=/dev/consoleTERM=linuxHA_DEBUGLOG=/dev/nullLC_ALL=hu_HU.ISO-8859-2HA_DATEFMT=%Y/%m/%d_%T HA_DIR=/etc/ha.dINIT_VERSION=sysvinit-2.86AUTOBOOT=YESHA_RESOURCEDIR=/etc/ha.d/resource.dPATH=/opt/scalix/bin:/opt/scalix/bin:/bin:/sbin:/usr/sbin:/usr/binRUNLEVEL=2runlevel=2PWD=/var/lib/heartbeat/cores/rootVERBOSE=yesLANG=CHA_FIFO=/var/lib/heartbeat/fifoPREVLEVEL=Nprevious=NHOME=/SHLVL=8BOOT_IMAGE=LinuxHA_LOGFACILITY=local0HA_DOCDIR=/usr/share/doc/heartbeatHA_BIN=/usr/lib/heartbeatOMCURRENT=zeusn1HA_CURHOST=zeusn1HA_LOGFILE=/dev/nullHA_FUNCS=/etc/ha.d/shellfuncsHA_RCDIR=/etc/ha.d/rc.d_=/opt/scalix/bin/omonNLSPATH=/usr/lib/locale/%l/%N.cat
cat /proc/2175/environ (omsmtpd)
SELINUX_INIT=YESCONSOLE=/dev/consoleTERM=linuxHA_DEBUGLOG=/dev/nullLC_ALL=hu_HU.ISO-8859-2HA_DATEFMT=%Y/%m/%d_%T HA_DIR=/etc/ha.dINIT_VERSION=sysvinit-2.86AUTOBOOT=YESHA_RESOURCEDIR=/etc/ha.d/resource.dPATH=/opt/scalix/bin:/opt/scalix/bin:/bin:/sbin:/usr/sbin:/usr/binRUNLEVEL=2runlevel=2PWD=/var/lib/heartbeat/cores/rootVERBOSE=yesLANG=CHA_FIFO=/var/lib/heartbeat/fifoPREVLEVEL=Nprevious=NHOME=/SHLVL=8BOOT_IMAGE=LinuxHA_LOGFACILITY=local0HA_DOCDIR=/usr/share/doc/heartbeatHA_BIN=/usr/lib/heartbeatOMCURRENT=zeusn1HA_CURHOST=zeusn1HA_LOGFILE=/dev/nullHA_FUNCS=/etc/ha.d/shellfuncsHA_RCDIR=/etc/ha.d/rc.d_=/opt/scalix/bin/omonNLSPATH=/usr/lib/locale/%l/%N.cat
There is a LANG=C after variable LC_ALL=hu_HU.ISO-8859-2. So i think my SMTP process works with LANG=C
And this is my problem.....i think....
Can u help me to understand what should i do to change charset of hu_HU.ISO-8859-2.
All system is on hungarian except scalix...
Best Regards,
Darvi
ps: it's Scalix 10 CE on Debian Sarge
Posted: Thu Jan 04, 2007 6:33 am
by florian
You should *NOT* put any charset that is not UTF-8 into any of those variables as it won't work. Actually, we do suggest en_US.UTF-8 independent of your true locale.
Cheers,
Florian.
Posted: Thu Jan 04, 2007 6:48 am
by fireking
I have just noticed a LangMap file in /opt/scalix/template/release.sys/LangMap
If i have made some change in this file it will work for me?
If i would add this:
# Hunagrian is the Scalix name for HU hungarian
OMLANG=hungarian
OMSTDID=852
OMEQU=hu
OMEQU=hu_HU
OMEQU=hu_HU.ISO-8859-2
DEFSYSLANG=hu_HU
Best Regards,
Darvi