J'ai un problème lors de l'upload de fichier sur un serveur
d'application.
Sur le tomcat de dev (eclipse/windows), pas de problème, les noms de
fichiers sont bien reconnus.
Par contre une fois en prod sur un serveur Linux, plus moyen de traiter
convenablement les caractères spéciaux.
Dans la page html qui uploade j'ai la balise :
<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
le form d'upload est encodé:
<form name="purchaseForm" method="post" action="/workflow/purchase.do"
enctype="multipart/form-data">
Au niveau du système (Fedora 3), j'ai testé dans /etc/sysconfig/i18n :
J'ai fixé la varibale d'environnement LC_ALL=fr_FR Si j'execute sur la machine (via la commande "java") :
byte b[] = {}; InputStreamReader isr = new InputStreamReader( new ByteArrayInputStream( b ) ); System.out.println( "JVM's default encoding: " + isr.getEncoding() );
J'ai bien à l'affichage : JVM's default encoding: ISO8859_1
Par contre si j'execute ce code dans Tomcat j'ai : JVM's default encoding: ASCII
Ceci expliquant cela.
Par contre Tomcat est sensé prendre comme default_charset celui du système...
??? Merci
-- - Franck mailto:
Rene Mouchot
Quelques précisions supplémentaires
J'ai fixé la varibale d'environnement LC_ALL=fr_FR Si j'execute sur la machine (via la commande "java") :
byte b[] = {}; InputStreamReader isr = new InputStreamReader( new ByteArrayInputStream( b ) ); System.out.println( "JVM's default encoding: " + isr.getEncoding() );
J'ai bien à l'affichage : JVM's default encoding: ISO8859_1
Par contre si j'execute ce code dans Tomcat j'ai : JVM's default encoding: ASCII
Ceci expliquant cela.
Par contre Tomcat est sensé prendre comme default_charset celui du système...
salut, tu devrais essayer la liste des utilisateurs tomcat ( en english in ze text ) <URL:http://jakarta.apache.org/site/mail2.html#Tomcat> ou les archives a www.mail-archive.com , liste tomcat-user.
a+ -- Rene Mouchot
Quelques précisions supplémentaires
J'ai fixé la varibale d'environnement LC_ALL=fr_FR
Si j'execute sur la machine (via la commande "java") :
byte b[] = {};
InputStreamReader isr
= new InputStreamReader( new ByteArrayInputStream( b ) );
System.out.println( "JVM's default encoding: " + isr.getEncoding() );
J'ai bien à l'affichage :
JVM's default encoding: ISO8859_1
Par contre si j'execute ce code dans Tomcat j'ai :
JVM's default encoding: ASCII
Ceci expliquant cela.
Par contre Tomcat est sensé prendre comme default_charset celui du
système...
salut,
tu devrais essayer la liste des utilisateurs tomcat ( en english in ze
text )
<URL:http://jakarta.apache.org/site/mail2.html#Tomcat> ou les archives
a www.mail-archive.com , liste tomcat-user.
J'ai fixé la varibale d'environnement LC_ALL=fr_FR Si j'execute sur la machine (via la commande "java") :
byte b[] = {}; InputStreamReader isr = new InputStreamReader( new ByteArrayInputStream( b ) ); System.out.println( "JVM's default encoding: " + isr.getEncoding() );
J'ai bien à l'affichage : JVM's default encoding: ISO8859_1
Par contre si j'execute ce code dans Tomcat j'ai : JVM's default encoding: ASCII
Ceci expliquant cela.
Par contre Tomcat est sensé prendre comme default_charset celui du système...
salut, tu devrais essayer la liste des utilisateurs tomcat ( en english in ze text ) <URL:http://jakarta.apache.org/site/mail2.html#Tomcat> ou les archives a www.mail-archive.com , liste tomcat-user.
a+ -- Rene Mouchot
Lionel
Franck wrote:
Salut,
J'ai un problème lors de l'upload de fichier sur un serveur d'application. Sur le tomcat de dev (eclipse/windows), pas de problème, les noms de fichiers sont bien reconnus.
Par contre une fois en prod sur un serveur Linux, plus moyen de traiter convenablement les caractères spéciaux.
Dans la page html qui uploade j'ai la balise : <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
Et avec ceci coté serveur avant de récupérer les données sur la request: request.setCharacterEncoding("ISO-8859-1");
Franck wrote:
Salut,
J'ai un problème lors de l'upload de fichier sur un serveur
d'application.
Sur le tomcat de dev (eclipse/windows), pas de problème, les noms de
fichiers sont bien reconnus.
Par contre une fois en prod sur un serveur Linux, plus moyen de
traiter convenablement les caractères spéciaux.
Dans la page html qui uploade j'ai la balise :
<meta http-equiv="content-type"
content="text/html;charset=ISO-8859-1">
Et avec ceci coté serveur avant de récupérer les données sur la request:
request.setCharacterEncoding("ISO-8859-1");
J'ai un problème lors de l'upload de fichier sur un serveur d'application. Sur le tomcat de dev (eclipse/windows), pas de problème, les noms de fichiers sont bien reconnus.
Par contre une fois en prod sur un serveur Linux, plus moyen de traiter convenablement les caractères spéciaux.
Dans la page html qui uploade j'ai la balise : <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
Et avec ceci coté serveur avant de récupérer les données sur la request: request.setCharacterEncoding("ISO-8859-1");
Franck
Merci,
Je m'en suis sorti en modifiant les parametres d'ini de la JVM (-Dfile.encoding=ISO-8859-1)
Mais je classe ça dans les bugs, car par défaut les applis TJava sont sensés se caler sur le charset du système.
Bye
-- - Franck mailto:
Merci,
Je m'en suis sorti en modifiant les parametres d'ini de la JVM
(-Dfile.encoding=ISO-8859-1)
Mais je classe ça dans les bugs, car par défaut les applis TJava sont
sensés se caler sur le charset du système.