简体   繁体   中英

icCube Reporting : Cannot save Report with accent

When saving a report with accent "Dépenses", the generated filename is having some weird ? characters and then the report cannot be opened/deleted. Neither from the reporting nor from the Docs application.

Report names are eventually mapped to file names. It looks like there is a bug with the old JAVA IO API when manipulating file names.

It seems this issue is occurring when the JAVA property sun.jun.encoding has a weird value (this can be checked in the server UI interface): for example something like: ANSI_X3.4-168 . icCube is expecting UTF-8

On a Linux machine, you can check the locale setup as following. In a shell with the user launching icCube:

# locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=en_GB.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_ADDRESS=
LC_TELEPHONE=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_ALL=

Then enter the following to check the available locales:

# locale -a
C
C.UTF-8
en_US.utf8
POSIX

As you can see the en_GB locale mentioned in the first command is missing and it seems this confuses the JVM. So you can generate the missing locale by commenting out the corresponding locale in the file:

/etc/locale.gen

and then regenerate the locales:

# locale-gen

then you can check:

# locale -a
C
C.UTF-8
en_GB.utf8
en_US.utf8
POSIX

Now when restarting icCube, the sun.jnu.encoding should be UTF-8 and you should be able to have reports with accents.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM