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

Servlets/JSP Java Discussion :

Lier liste déroulante et deux champs texte


Sujet :

Servlets/JSP Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut Lier liste déroulante et deux champs texte
    Bonjours, j'ai un probleme au niveau de la fonction isLast() dans mes deux pages de traitement. Je ne comprend pas pourquoi, je sias que mon code javascript marche bien car celui-ci envoie bien tout ce qui faut. Si quelqu'un peut m'aidé.
    Voici mon code

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
    <select name = "ccs" id = "ccs" style="width : 70px" onchange="getCcs(this)"/>
    <option value = -1>----CCS----</option>
    <%
            DBConnexion dbc_ccs = new DBConnexion();
            String sql_ccs = "SELECT num_ccs FROM ccs", num_ccsBfr;
            ResultSet resultat_ccs = dbc_ccs.recupereRequete(sql_ccs);
            while(resultat_ccs.next())
            {
                    num_ccsBfr = resultat_ccs.getString("num_ccs");
                    out.print("<option value=" + num_ccsBfr + ">" + num_ccsBfr + "</option>");
            }
            dbc_ccs.closeConnexion();
    %>
    </select>
    </td>
    <script language="javascript">
    	function getCcs(ccs)
    	{
    		traitementNomCcs(ccs);
    		traitementCdFinancier(ccs);
    	}
     
    	function recupererXhr()
    	{
    		var xhr = null;
    		if(window.XMLHttpRequest) { // Firefox et autres 
    			xhr = new XMLHttpRequest();
    		} else if(window.ActiveXObject) { // Internet Explorer 
    			try {
    				xhr = new ActiveXObject('Msxml2.XMLHTTP');
    			} catch (e) {
    				xhr = new ActiveXObject('Microsoft.XMLHTTP');
    			}
    		} else {
    			// XMLHttpRequest non supporté par le navigateur 
    			alert('Votre navigateur ne supporte pas les objets XMLHTTPRequest');
    		}
    		return xhr;
    }
     
    function traitementNomCcs(ccs)
    {
    	var xhr = recupererXhr();
    	if(xhr) {
    		xhr.open('GET', '/application/envoyerTraitementNomCcs.jsp?type=' + ccs, true);
    		xhr.onreadystatechange = function() {
    			document.getElementById('nomCcs').innerHTML = xhr.responseText;
    		};
    	xhr.send(null);
    	}
    }
    function traitementCdFinancier(ccs)
    {
    	var xhr = recupererXhr();
    	if(xhr) {
    		xhr.open('GET', '/application/envoyerTraitementCdFinancier.jsp?type=' + ccs, true);
    		xhr.onreadystatechange = function() {
    			document.getElementById('codeFinancier').innerHTML = xhr.responseText; 
    		};
    		xhr.send(null);
    	}
    }
    </script>
     
    <td>
    <input type = "text" id ="nomCcs" name = "nomCcs" readonly>
    </td>
    <td><input type = "text" name = "codeFinancier" size= "1" maxlength = "5"></td>
    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
     
    <%
            DBConnexion dbc_nomCcs = new DBConnexion();
            String sql_nomCcs = "null", type_donnees = request.getParameter("type").replaceAll("'", "''"),name_donnees= "null";
            if(type_donnees.equals("K3212C1") || type_donnees.equals("K3212C3") || type_donnees.equals("K3212C5") || type_donnees.equals("K3212C7")) {
                    sql_nomCcs = "SELECT nom_agence FROM agence INNER JOIN ccs ON agence.id_agence = ccs.id_agence where num_ccs='" + type_donnees + "'";
                    name_donnees = "nom_agence";
            } else if(type_donnees.equals("K3219O2") || type_donnees.equals("K3219CS")) {
                    sql_nomCcs = "SELECT nom_pole FROM pole INNER JOIN ccs ON pole.id_pole = ccs.id_pole where num_ccs='" + type_donnees + "'";
                    name_donnees = "nom_pole";
            }
            ResultSet resultat_nomCcs = dbc_nomCcs.recupereRequete(sql_nomCcs);
            if(resultat_nomCcs.isLast()) {
                    out.print(resultat_nomCcs.getString(name_donnees).replaceAll("\"", "\\\""));
            }
            dbc_nomCcs.closeConnexion();
    %>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <%
            DBConnexion dbc_cdFinancier = new DBConnexion();
            String sql_cdFinancier = "SELECT num_code_financier FROM ccs INNER JOIN code_financier ON ccs.id_cd_financ = code_financier.id_cd_financ WHERE num_ccs ='" + request.getParameter("type").replaceAll("'", "''") + "'";
            ResultSet resultat_cdFinancier = dbc_cdFinancier.recupereRequete(sql_cdFinancier);
            if(resultat_cdFinancier.isLast()) {
                    out.print(resultat_cdFinancier.getString("code_financier").replaceAll("\"", "\\\""));
            }
            dbc_cdFinancier.closeConnexion();
    %>
    Merci d'avance

  2. #2
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    Personne sais pourquoi en JSP la fonction isLast() ne fonctionne pas?

  3. #3
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    C'est pas un souci JSP , car une JSP compilée est simplement une classe JAVA, tu peux le voir d'ailleurs dans ton work..catalina. C'est quoi ton souci au fait?
    Si tu veux un avis perso, je ne suis pas du tout fan des appels base dans des vues, ce n'est pas concu pour,tu dois être un ancien developpeur du monde php surement.
    Vous avez peut être hâte de réussir et il n'y a rien de mal à cela...
    mais la patience est aussi une vertu; l'échec vous l'enseignera certainement..."

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    Mon erreur c'est a la ligne isLast(), il me dit qu'il y a une erreur mais il me dit pas la cause.
    Je debut en langage web, c'est la premiere fois

  5. #5
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Quelle est l'erreur renvoyée ?
    As-tu un stack trace ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    Voila j'ai mis les deux stack trace en pieces jointes
    Images attachées Images attachées   

  7. #7
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Je ne vois pas...
    De quel type est resultat_cdFinancier ?
    (dans le source fourni, on voit ResultSet mais pas l'import qui va avec)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    Oui il est de type ResultSet

    Oui voici mes imports de ma page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <%@ page import="java.util.*,java.text.*,Delta.*,java.sql.*,connectionpool.*"%>
    Mais je pense pas que le soucis viens de la. Car j'ai deja utiliser ce type et ça marche tres bien.Ou alors il faut un import pour utiliser isLast()??

  9. #9
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Si ton objet est bien de type java.sql.ResultSet, je ne vois pas ce qui peut poser problème sur isLast().
    D'après la définition de l'interface, hors problème de db, ça ne devrait pas planter
    isLast

    public boolean isLast()
    throws SQLException Retrieves whether the cursor is on the last row of this ResultSet object. Note: Calling the method isLast may be expensive because the JDBC driver might need to fetch ahead one row in order to determine whether the current row is the last row in the result set.
    Returns:true if the cursor is on the last row; false otherwise Throws: SQLException - if a database access error occursSince:1.2
    Tu as une exception qui remonte ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    D'apres les deux screens que je t'ai envoyer, ya aucune erreur qui remonte. Mais il y a un petit triangle jaune en bas de ma page et quand j'affiche le détail, il me dit erreur ligne 122 erreur d'exécution inconnu. J'ai regarder la ligne 122
    c'est celle-ci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr = new ActiveXObject('Msxml2.XMLHTTP');

  11. #11
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    Je ne comprend pas pourquoi

  12. #12
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Je viens de me rendre compte que tu as oublié le rs.next() !
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    En rajoutant le rs.next()

    il me dit que l'erreur viens de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('nomCcs').innerHTML = xhr.responseText;

  14. #14
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Peux-tu montrer le code actuel ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  15. #15
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    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
     
    	DBConnexion dbc_nomCcs = new DBConnexion();
    	String sql_nomCcs = "null", type_donnees = request.getParameter("type").replaceAll("'", "''"),name_donnees= "null";
    	if(type_donnees.equals("K3212C1") || type_donnees.equals("K3212C3") || type_donnees.equals("K3212C5") || type_donnees.equals("K3212C7")) {
    		sql_nomCcs = "SELECT nom_agence FROM agence INNER JOIN ccs ON agence.id_agence = ccs.id_agence where num_ccs='" + type_donnees + "'";
    		name_donnees = "nom_agence";
    	} else if(type_donnees.equals("K3219O2") || type_donnees.equals("K3219CS")) {
    		sql_nomCcs = "SELECT nom_pole FROM pole INNER JOIN ccs ON pole.id_pole = ccs.id_pole where num_ccs='" + type_donnees + "'";
    		name_donnees = "nom_pole";
    	}
    	ResultSet resultat_nomCcs = dbc_nomCcs.recupereRequete(sql_nomCcs);
    	while(resultat_nomCcs.next())
    	{
    		if(resultat_nomCcs.isLast()) {
    			out.print(resultat_nomCcs.getString(name_donnees).replaceAll("\"", "\\\""));
    		}
    	}
    	dbc_nomCcs.closeConnexion();

  16. #16
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    Je commprend pas pourquoi rien ce s'affiche dans mes champs. Mon navigateur me remonte une erreur objet attendu a la ligne 83. Cette ligne correspond au select

  17. #17
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Ça ne risque pas ! Le code select est exécuté côté serveur, jamais il ne se retrouve sur le client.
    Si tu veux savoir à quelle ligne correspond l'erreur, il faut déjà éditer le code source de ta page dans le navigateur

    Dans tous les cas, sans le code complet de ta page, je ne risque pas de t'aider.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  18. #18
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    l'erreur a la ligne 83 je l'ai vu dans le code généré pas le source.
    Tu veux le code généré ou source de toute ma page?

  19. #19
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    153
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 153
    Points : 29
    Points
    29
    Par défaut
    Le problème viens maintenant de cette ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('nomCcs').innerHTML = xhr.responseText;

  20. #20
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Si c'est un warning de ton navigateur, c'est obligatoirement une ligne dans ta page, mais ça peut venir d'un fichier script externe aussi, ce qui rend plus difficile la recherche.
    Tu utilises IE je suppose ?
    Tu aurais (vraiment) intérêt à installer Firefox, la console d'erreur est beaucoup plus précise. Et si tu veux quelque chose d'encore plus précis, installe le plugin Fire Bug, c'est TOP
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [MySQL] comment insérer des données d'une liste déroulante dans un champ texte
    Par berti dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/01/2008, 09h12
  2. Concaténer deux listes déroulantes dans un champs texte en direct
    Par arnaudperfect dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 11/12/2007, 17h50
  3. Réponses: 10
    Dernier message: 27/03/2007, 12h21
  4. Liste déroulante remplie un champs texte
    Par tukutt dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/02/2007, 15h52
  5. [MySQL] Liste déroulante contenant deux champs d'une requete
    Par budiste dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 05/10/2005, 11h21

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