IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

[Struts] le caractère Euro et Oracle


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 3
    Par défaut [Struts] le caractère Euro et Oracle
    Salut,

    J'ai un gros souci de page de code dans mon appli Struts/Oracle. J'ai des formulaires où l'on doit pouvoir saisir le caractère euro €. Lorsque je le saisi, tout va bien côté Java, je fais plusieurs aller-retours navigateur/serveur, j'ai toujours bien ma saisie restituée dans mon formulaire.

    Le problème apparaît lorsque j'écris cette donnée dans Oracle et que la restitue à l'écran via une autre page Web. J'ai un point d'interrogation à l'envers à la place de "€".

    J'ai pas mal cherché sur le web pour une solution. J'ai gratté du côté des NLS_LANG Oracle et je lui ai collé un WE8ISO8859P15.

    Côté HTML, j'ai mis <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">" sur les pages qui contiennent le formulaire (si je mets -15 à la fin, je perds l'Euro dès le premier aller-retour serveur)

    Ma page JSP commence par <%@ page contentType="text/html;charset=iso-8859-1" language="java" %>

    Mon serveur est sous Linux RedHat, j'ai ça comme variable d'environnement :
    LANG=fr_FR_EURO.ISO-8859-15
    NLS_LANG=FRENCH_FRANCE.WE8ISO8859P15

    Je désespère !! j'ai beau regarder partout, je ne vois pas ce qu'il y a de travers. Bon, faut dire que je ne suis pas spécialement fortiche ni en Linux ni en admin Oracle, ca doit venir de là

    Donc, si quelqu'un veut bien me venir en aide, ce serait bien sympa


    San_A




    [Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java

  2. #2
    Membre expérimenté Avatar de xv-mnt
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2005
    Messages : 142
    Par défaut
    Peux-tu regarder directement dans la DB (via un client ORACLE, ou SQL+) si tu as bien le signe € dans ton enregistrement ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 3
    Par défaut
    Quand on fait un INSERT en dur, on récupère bien la donnée. Le problème semble provenir de la "jonction" entre la partie présentation (JSP/Struts) et la partie BD.

    Tout ce passe comme si Struts envoyait un mauvais code pour le € à la base de données, mais je ne vois pas quel charset indiquer aux deux parties pour qu'elles se comprennent.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 3
    Par défaut
    Après moults recherches et de nombreux tatonnements, nous avons enfin trouvé la solution.

    Il faut implémenter les méthodes reset des ActionForm Struts comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public void reset(ActionMapping arg0, HttpServletRequest arg1) {       
            super.reset(arg0, arg1);
     
            try
            {
                arg1.setCharacterEncoding(CHARACTER_ENCODING);
            }
            catch (Exception e) {
                e.printStackTrace();
            }
    }
    Merci à xv_mnt pour sa réponse


    San_A

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ ORACLE ][ STRUTS ] [ JAVA ] maximum open cursor
    Par LoulouFifi dans le forum Struts 1
    Réponses: 21
    Dernier message: 30/03/2011, 11h52
  2. [Struts] [Oracle] Datasource et Servlet indispo
    Par babylone7 dans le forum Servlets/JSP
    Réponses: 14
    Dernier message: 01/01/2009, 20h16
  3. Import caract cirylliques ds ORACLE
    Par LaGaloche dans le forum Oracle
    Réponses: 1
    Dernier message: 13/02/2007, 12h01
  4. Réponses: 5
    Dernier message: 28/04/2004, 15h09
  5. [Struts][Oracle]Upload fichier word dans une base
    Par Maximil ian dans le forum Struts 1
    Réponses: 7
    Dernier message: 10/02/2004, 15h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo