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 :

Problème d'accès à la BD


Sujet :

Servlets/JSP Java

  1. #1
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 57
    Par défaut Problème d'accès à la BD
    Je voudrai vous soumettre un autre problème . En fait c un problème pour l'affichage des données de ma base l'execution de requete de mise à jour.
    Voilà dans l'entete de ma page j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %>
    <%@ page import="java.util.*" %>
    <%@page  import="java.sql.Statement" %>
    <%@page  import="java.sql.ResultSet" %>
    <%@ include file = "entete.html" %>
    <%@ page import="gestionformation.Connexion" %>
    Pour la connexion j'ai juste instancié ma classe comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <% Connexion conex = new Connexion(); %>
    puis je fais ma requete de selection
    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
    <%
    Statement stat1 = null;
    String req = "SELECT * FROM qualification";
    //execution de req
    ResultSet rs1 = stat1.executeQuery(req);
    ResultSetMetaData rsmd = rs1.getMetaData();
    int nbcol = rsmd.getColumnCount(); 
     
    while(rs1.next())
    {
    %>
    <tr>
    <td><%=rs1.getString(1)%></td>
    <td><%=rs1.getString(2)%></td>
    </tr>
    <%
    }
    %>
    j'ai cette erreur:
    description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.

    exception

    org.apache.jasper.JasperException
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
    Et lorsque je fais la mise à jour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Statement stat2 = null;
    String updt = "INSERT INTO PAYS(CODEPAYS, NOMPAYS) VALUES('000', 'BENIN')";
     //execution de la mise à jour
     ResultSet rs2 = stat2.executeUpdate(updt);
    j'ai cette erreur:
    org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP

    Une erreur s'est produite à la ligne: 17 dans le fichier jsp: /listeagent.jsp
    Erreur de servlet générée:
    C:\Documents and Settings\Léon SAMAKE\.netbeans\5.0\jakarta-tomcat-5.5.9_base\work\Catalina\localhost\StageLpsil\org\apache\jsp\listeagent_jsp.java:245: incompatible types
    found : int
    required: java.sql.ResultSet
    ResultSet rs2 = stat2.executeUpdate(updt);
    ^
    Aurai je mal ecrit quelque chose ?

  2. #2
    Membre expérimenté Avatar de Sceener
    Inscrit en
    Mai 2007
    Messages
    231
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 231
    Par défaut
    Vu l'erreur oui :

    d'aprés la doc executeupdate retourne une valeur int , probablement pour dire combien tu as insérer dans le cas d'insert ou combien tu as modifier dans le cas d'update et ainsi de suite ...

    http://java.sun.com/j2se/1.4.2/docs/...va.lang.String)

  3. #3
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 57
    Par défaut
    ok!! c'est fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int nbrow = stat2.executeUpdate(updt);
    et il me met la meme erreur que lorsque de je fais un select!!

  4. #4
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Il faudrait donner la trace complète de l'erreur, avec la cause mère (root cause).

  5. #5
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 57
    Par défaut
    Voici la cause mère de l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    cause mère 
     
    java.lang.NullPointerException
    	org.apache.jsp.listeagent_jsp._jspService(listeagent_jsp.java:245)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)

  6. #6
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Je pense que tu as un NullPointerException parce que Statement est initialisé à null ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Statement stat1 = null;
    Remplace le par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Statement stat1 = conex.createStatement();
    EDIT : je pense que tu devrais jeter un oeil à la FAQ JDBC.

  7. #7
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 57
    Par défaut
    Merciiiiii!! ça marche c'etait bien l'initialisation de stat qui etait mal fait.
    Pour l'initialisé je ne pouvait pas le faire directement de connex puisqu'il est du type de ma classe Connexion. Mais dans cette classe j'ai une methode getConn()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class Connexion
    {
    private Connection conn = null;
    ...
    public Connection getConn()         {   return conn;        }
    ...
    }
    j'ai créée une variable Connection à partir duquel j'ai pu faire mon intialisation comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Connection con = conex.getConn();
    Statement stat1 = con.createStatement();
    ....
    Merci encore!!

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

Discussions similaires

  1. [ADO] [MSACCESS] Problème d'accès à une table nommée OF
    Par FredRaid dans le forum Bases de données
    Réponses: 3
    Dernier message: 15/02/2005, 17h22
  2. Problème d'accès à une DB
    Par Mvu dans le forum ASP
    Réponses: 4
    Dernier message: 04/01/2005, 11h36
  3. [TOMCAT] JSP problème d'accès aux méthodes d'une classes
    Par gunnm dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 22/05/2004, 14h02
  4. problème d'acces concurentiel à un fichier
    Par Theoden dans le forum MFC
    Réponses: 2
    Dernier message: 04/03/2004, 09h49

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