Hello les gens
voila je m'atèle à étudier le très instructif tutoriel Java de jmd à partir des cours pour apprendre Java (partie 55. Ajax>55.4. Des frameworks pour mettre en oeuvre>55.4.1. Direct Web Remoting (DWR)>55.4.1.6. Exemple pour valider des données) Ajax pour l'intégration du framework DWR à struts. J'ai fait exactement le même code mais y'a un os, je m'explique: à chaque evenement keyUp sur l'input (je voulais essayer ça sur un <html:text> mais ça n'a pas d'Id) est suposé se produire un aller jusqu' la methode
de l'objetTestDWR qui est mappé sur le bean com.jmd.test.ajax.dwr.TestDWR or tout ce que j'obtiens est une alert javascript avec "error"
Code : Sélectionner tout - Visualiser dans une fenêtre à part validerValeur()
j'ai donc mis deux alert comme suit:
et un point au niveau de:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 function valider() { alert("je suis la 1") ; TestDWR.viderValeur(afficherValidation, $("donnees").value); alert("je suis la 2") ; }
resultat des courses seul le premier alert s'affiche
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public String validerValeur(String valeur) { String resultat = "invalide"; ici le point -> if ((valeur != null) && valeur.startsWith("X")) { resultat = "valide"; } return resultat; }
j'ai donc changé l'appel de:
dans ma jsp en:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function valider() { TestDWR.validerValeur(afficherValidation, $("donnees").value); }
comme semble l'indiquer la signature de la methode validerValeur() du bean. Cette fois ci s'affiche la première ("je suis la 1"), puis il y'a bien arrêt au niveau du point défini precedement enfin s'affiche le deuxième alert ("je suis la 2")
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function valider() { TestDWR.validerValeur($("donnees").value); }
mais rien ne se produit puisque le resultat n'est pas exploité (il n-y'a plus d'appel à)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 function afficherValidation(data) { DWRUtil.setValue("validationMessage",data); if (data == "valide") { $("validationMessage").style.color='#00FF00'; } else { $("validationMessage").style.color='#FF0000'; } }
quelqu'un pourrait-t'il m'expliquer:
-1 de quoi ce comportement viens-t'il (l'alert avec "error") ?
-2 pourquoi ne restpecte ont pas la signature de la methode validerValeur() lors de son appel au niveau de la jsp ?
merci pour toutes vos contributions
Partager