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

JSF Java Discussion :

Problème d'insertion des caractères arabes à travers les pages XHTML


Sujet :

JSF Java

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2011
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Novembre 2011
    Messages : 109
    Points : 60
    Points
    60
    Par défaut Problème d'insertion des caractères arabes à travers les pages XHTML
    Bonjour,


    J'ai un projet jsf , hibernate, mysql. J'ai un problème lors de l'insertion des caractères arabes dans la base de données à travers la page xhtml sachant que j'ai réussi à insérer en arabe directement dans la base.
    Le problème est que les caractères insérés à partir de l'interface sont remplacés par des "?????".
    J'ai suivi quelques suggestions -trouvées sur le net- dans les fichiers: web.xml et hibernate.cfg.xml mais en vain.

    J'ai besoin de votre aide et merci d'avance.

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Points : 443
    Points
    443
    Par défaut
    tu utilises quel jeu de composants?

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2011
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Novembre 2011
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    j'ai utilisé editable dataTable, boîte de dialog, le résultat est le même: des points d'interrogation dans la base de données

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Points : 443
    Points
    443
    Par défaut
    non je veux dire tu utilises primefaces ou richfaces comme jeu de composant.

    Je t'invite à voir cet exemple il permet de supporter toutes les langues.

    http://www.primefaces.org/showcase/u...able/rtl.xhtml

  5. #5
    Membre du Club
    Inscrit en
    Novembre 2011
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Novembre 2011
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    j'utilise primefaces.

    Je n'ai pas un problème d'affichage des caractères arabes déjà insérées dans le datatable (ils sont correctement affichés). Le problème est que lors de la modification ou l'insertion des données à travers les pages xhtml, les données sont enregistrées dans la table sous forme de points d'interrogation.

  6. #6
    Membre chevronné Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Points : 2 120
    Points
    2 120
    Par défaut
    salut,
    peux-tu nous donner le code xhtml et le code de sauvegarde dans la base de données?

    Eric

  7. #7
    Membre du Club
    Inscrit en
    Novembre 2011
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Novembre 2011
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Le code xhtml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    <p:dataTable id="tbl"  value="#{logTMB.listLog}" var="listelog"
    						editable="true"
    						style="Font:12pt Times New Roman;margin-bottom:20px" dir="rtl"
    						emptyMessage="لا توجد نتائج حسب معطيات البحث" paginator="true"
    						rows="10" paginatorPosition="bottom" rowsPerPageTemplate="10,15"
    						binding="#{logTMB.datable}"
    						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}">
    						<f:facet name="header"> قائمة الإدارية       </f:facet>
    						<p:ajax event="rowEdit" listener="#{logTMB.onRowEdit}"
    							update=":form:msgs" />
    						<p:ajax event="rowEditCancel" listener="#{logTMB.onRowCancel}"
    							update=":form:msgs" />
    						<p:column headerText=" wالرتبي" 
    							filterMatchMode="endsWith">
    							<p:cellEditor>
    								<f:facet name="output">
    									<h:outputText value="#{listelog.w}" />
    								</f:facet>
    								<f:facet name="input">
    									<p:inputText id="modelInput" value="#{listelog.w}"/>
    								</f:facet>
    							</p:cellEditor>
    						</p:column>
     
    						<p:column headerText="zالرسم ">
    							<p:cellEditor>
    								<f:facet name="output">
    									<h:outputText value="#{listelog.z}" />
    								</f:facet>
    								<f:facet name="input">
    									<p:inputText value="#{listelog.z}"  />
    								</f:facet>
    							</p:cellEditor>
    						</p:column>
    						<p:column headerText="المائي ">
    							<p:cellEditor>
    								<f:facet name="output">
    									<h:outputText value="#{listelog.y
    								</f:facet>
    								<f:facet name="input">
    									<p:inputText value="#{listelog.y}"  />
    								</f:facet>
    							</p:cellEditor>
    						</p:column>
    						<p:column headerText="هربائي ">
    							<p:cellEditor>
    								<f:facet name="output">
    									<h:outputText value="#{listelog.x}" />
    								</f:facet>
    								<f:facet name="input">
    									<p:inputText value="#{listelog.x}"
    										 />
    								</f:facet>
    							</p:cellEditor>
    						</p:column>
     
    						<p:column style="width:32px">
    							<p:rowEditor />
    						</p:column>

    Le code de la modification(managedBean):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public void onRowEdit(RowEditEvent event) {
            FacesMessage msg = new FacesMessage("Logement Edited", ((Logement) event.getObject()).getIdLog());
            logTDao.merge((Logement) event.getObject());
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
    Le code de la modification (hibernate):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public Logement merge(Logement detachedInstance) {
    		log.debug("deleting Logement instance");
    		try {
    			Session session = Dbsession.getSessionFactory().getCurrentSession();
    			tx = session.beginTransaction();
    			Logement result = (Logement) session.merge(detachedInstance);
    			tx.commit();
    			return result;
    		} catch (RuntimeException re) {
    			log.error("merge failed", re);
    			throw re;
    		}
    	}

  8. #8
    Membre chevronné Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Points : 2 120
    Points
    2 120
    Par défaut
    salut,
    et lorsque tu essaies d´afficher le message en console, est ce que le mesage apparait avec les bons caracteres?

    tu utilises quelle IDE?


    Eric

  9. #9
    Membre du Club
    Inscrit en
    Novembre 2011
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Novembre 2011
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    lors de la modification, les caractères s'affichent correctement dans la console.
    J'utilise l'IDE Eclipse Indigo.

  10. #10
    Membre chevronné Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Points : 2 120
    Points
    2 120
    Par défaut
    Salut,
    as tu essayé de changer l´URL de la connection comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8
    Eric

  11. #11
    Membre du Club
    Inscrit en
    Novembre 2011
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Novembre 2011
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Oui, j'ai essayé ça, mais en vain.

  12. #12
    Membre du Club
    Inscrit en
    Novembre 2011
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Novembre 2011
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Le problème a été résolu et j'ai oublié de mettre la solution:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		<property name="hibernate.connection.url">jdbc:mysql://@ip:3306/nomBase?useUnicode=true&amp;characterEncoding=UTF-8</property>

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

Discussions similaires

  1. Problème d'insertion des caractères accentués
    Par yaya0057 dans le forum Général Java
    Réponses: 5
    Dernier message: 24/02/2011, 10h42
  2. Réponses: 1
    Dernier message: 31/12/2008, 09h04
  3. [XSL-FO][FOP] problème d'affichage des caractère arabe
    Par MedNaceur dans le forum XSL/XSLT/XPATH
    Réponses: 19
    Dernier message: 27/11/2008, 17h43
  4. [MySQL] problème d'insertion des caractères arabe dans une base mysql
    Par sasaas dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/03/2008, 11h56
  5. Problème de stockage des caractères arabe dans Mysql?
    Par merci_tous dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 24/04/2007, 12h21

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