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 :

une variable JavaScript vers Un ManagedBean


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 48
    Par défaut une variable JavaScript vers Un ManagedBean
    Bonjour

    J'ai bel et bien cherché un peu partout mais j'ai pas pu trouver une réponse.

    En fait je récupère une variable V dans une fonction Javascript. La variable est du type suivant: " 99.9999, 9.99999 ". Cela représente en fait des coordonnées X et Y que je dois renvoyer (séparément) vers mon ManagedBean pour les enregistrer dans la base.
    Mon ManagedBean possède effectivement deux attributs X et Y. Alors non seulement je dois récupérer cette variable dans le JSF mais aussi la séparer en deux!
    Je sais qu'en Java je pourrai utiliser des méthodes tel que Tokenizer() pour isoler la partie X de la partie Y de ma variable... mais je ne sais pas comment m'y prendre dans une page JSP/JSF

    Ma question est: Comment peut on renseigner une variable Javascript dans un ManagedBean! en passant pas <f:inputText....> J'ai pas trouvé d'issue!
    Et comment pourrait je séparer ma variable V en deux variables X et Y ??


    Merci d'avance pour votre soutient

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Pour séparer ta variable, il existe la méthode split en Javascript, qui divise une chaine de caractère dans un tableau, en utilisant un token comme séparateur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var values = laValeur.split(",");
    var x = values[0];
    var y = values[1];
    Pour transmettre ces valeurs à un bean, il suffit de le mettre dans un champ <h:inputHidden>:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <h:form id="myForm">
        <h:inputHidden id="val1" value="#{monBean.value1}"/>
        <h:inputHidden id="val2" value="#{monBean.value2}"/>
        ...
    et donc dans le Javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var values = laValeur.split(",");
    document.getElementById("myForm:val1").value = values[0];
    document.getElementById("myForm:val2").value = values[1];
    Ce Javascript va mettre à jour les valeurs des 2 champs cachés, qui mettront ensuite à jour les valeurs value1 et value2 du bean au moment de la soumission du formulaire...

    Si tu as des questions sur ce code, n'hésite pas...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 48
    Par défaut
    bonjour romaintaz

    Merci bien pou ton aide. Le code semble être tres bien.
    mais en l'appliquant, je n'avais aucun résultat.
    Un petit coup d'oeuil sur la console des erreurs de firefox donne entre autres:

    " laValeur.split is not a function "


    même en appliquant un tostring () sur la variable, rien ne change!
    Mon objet est ainsi créé après l'action "valider" mais avec des champs X et Y vides!

    à partir de ce moment, je pense que je je devrai avoir des bibliothèques qui manque dans mon projet.
    Mais en même temps eclipse ganymede ne me mentionne aucune erreur ou manque de bibliothèque au niveau de la fonction javascript!

    qu'est ce qui manque à ton avis?

  4. #4
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Je suis parti du principe que ta variable était une chaine de caractère. La méthode split() existe bien pour ce type de classe.
    Eventuellement, tu peux faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var values = tonObjet.toString().split(",");
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 48
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    Je suis parti du principe que ta variable était une chaine de caractère. La méthode split() existe bien pour ce type de classe.
    Éventuellement, tu peux faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var values = tonObjet.toString().split(",");
    oui effectivement, il fallait "caster" en string.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var values1=MonObjet.toString();
    var values=values1.split(",");
    ....
    
    ---> ceci ne marche pas (pour ceux qui auront le même prblm.)
    JSEclipse !! je connais pas... est ce kil supporte du J2ee (plugin ou extention...)?
    Sinon voilà, les valeur X et Y sont bien dans le bean
    Encore merci pour ton aide.

  6. #6
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Citation Envoyé par magnum_cl9 Voir le message
    Mais en même temps eclipse ganymede ne me mentionne aucune erreur ou manque de bibliothèque au niveau de la fonction javascript!
    Eclipse de base ne permet pas grand chose niveau développement Javascript. J'avais trouvé JSEclipse, et je le trouve pas trop mal. Loin d'être parfait, mais avec Firebug en complément, ça va déjà mieux !
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 09/07/2014, 12h13
  2. Passer une variable java vers javascript
    Par naincus dans le forum Applets
    Réponses: 0
    Dernier message: 24/06/2009, 04h27
  3. Réponses: 3
    Dernier message: 30/03/2009, 11h52
  4. [PHP-JS] Transmettre une variable javascript vers php
    Par phpaide dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 20/05/2006, 08h30
  5. Récupérer une variable --> Javascript+CSS
    Par Skarlix dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 30/08/2005, 16h01

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