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

Tomcat et TomEE Java Discussion :

[tomcat] freeze ...


Sujet :

Tomcat et TomEE Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut [tomcat] freeze ...
    Bonsoir,

    j'ai un petit problème avec Apache Tomcat 5.0.28
    J'ai une page qui fonctionne correctement (avec des requêtes SQL) ... si je fais 2 ou 3 refresh de la page dans le navigateur, tomcat a l'air de freezer ... obliger de le stopper et redémarrer.

    Quelqu'un aurait un programme pour "surveillez" ou analyser la charge de travail du serveur ?

  2. #2
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    377
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 377
    Points : 356
    Points
    356
    Par défaut
    Probablement des connexions mal libérées.
    Tu as pensé à regarder, ensuite Tomcat essaie de connecter mais il n'y arrive plus.
    C'est probablement quelque chose de ce genre.
    A vérifier.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Alors je pense que mes connexions sont libérées ...
    voici le genre de requete qui se trouve dans la page index.jsp :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <%
    float montant_esth_produits = RequetesSQL.esth_montantProduits(null);
    if (montant_esth_produits == -1)
      out.print("<u>pas de ventes</u>");
    else
      out.print(montant_esth_produits+" &euro;");
    %>
    j'ai en fait 4 requête du meme style sur la page.

    et la classe RequetesSQL :

    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
     
    	public static float esth_montantProduits(Date date){
    	    float montant = -1;
     
            // Récupère la connexion au DataSource
            Connexion conn = new Connexion();
            conn.init();
     
            PreparedStatement pstmt=null;
            ResultSet rs=null;
            try {
                if (date==null){
                    Calendar cal = Calendar.getInstance();
                    date = new Date(cal.getTimeInMillis());
                }
           		pstmt = conn.getConn().prepareStatement("SELECT total_produits FROM esth_livre_caisse WHERE date_debut=?;");
           		pstmt.setDate(1, date);
                rs = pstmt.executeQuery();
     
                if(rs.first()){
                    montant = rs.getFloat("total_produits");
                }
                conn.getConn().close();
            }
            catch(SQLException sqle){
                //TODO voir si on voit le message
                System.err.println(sqle.getMessage());
            }
            conn=null;
            return montant;
    	}//fin esth_montantProduitsEnCours
    et ma classe Connexion :
    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
     
    package be.cityform.administration.sql;
     
    import java.sql.Connection;
    import java.sql.SQLException;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.sql.DataSource;
     
    public class Connexion {
     
        /** Etat de la connexion */
        private boolean connected = false;
        /** La référence au DataSource */
        private DataSource ds = null;
     
        /**
         * Initialise la connexion au DataSource
         */
        public void init() {
            try {
                Context initContext = new InitialContext();
                Context envContext = (Context) initContext.lookup("java:/comp/env");
                ds = (DataSource) envContext.lookup("jdbc/postgres");
     
                if (ds != null) {
                    Connection conn = ds.getConnection();
                    if (conn != null) {
                        connected = true;
                        conn.close();
                        connected = false;
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }//fin init
     
        /**
         * Retourne la session de connexion
         * 
         * @return Connection
         * @throws SQLException
         */
        public Connection getConn() throws SQLException {
            return ds.getConnection();
        }//fin getConn
     
        /**
         * Permet de savoir si on est connecté à la base de données
         * 
         * @return boolean
         */
        public boolean isConnected() {
            return connected;
        }//fin isConnected
     
    }//fin Connexion

    Je sais que dans un premier temps c'est pas super bien codé, mais il faut livrer une version qui fonctionne, j'optimiserai par la suite ...

  4. #4
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    377
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 377
    Points : 356
    Points
    356
    Par défaut
    Il vaut mieux faire ton close de ta connection dans ton finally de ton try catch.
    Car là en cas d'erreur SQL, tu ne passes pas dans ton close.
    A voir.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Ca donnerait un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
            finally{
                try{
                    conn.getConn().close();
                }
                catch(SQLException sqle){}
                conn=null;
            }

    C'est une bonne méthode d'ouvrir et fermer la connexion au DS a chaque requete SQL ou il vaut mieux ouvrir une seule fois la connexion au début ?

  6. #6
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    377
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 377
    Points : 356
    Points
    356
    Par défaut
    Oui tout à fait.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Toujours le meme probleme

    Je peux rafraichir 4 fois ... avec intervalle de 2 secondes .... ensuite il n'affiche plus rien ... il ne sait plus se connecter au module Web en fait ...
    mais tomcat fonctionne tjs si je vais sur la page d'accueil http://localhost:8080/ il l'affiche sans prob.
    Donc en gros c'est pas Tomcat qui freeze, mais mon application
    Je vois pas comment je pourrais faire pour voir d'ou pourrait venir le problème ...

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    J'ai mis le serveur en mode debug mais il n'affiche rien comme message, et rien dans les logs non plus ...

  9. #9
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    377
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 377
    Points : 356
    Points
    356
    Par défaut
    Tu n'as rien dans les logs ?
    C'est étonnant çà.
    As tu essayé de mettre des traces. System.out, partout dans ta JSP.
    Comme çà tu pourras vérifier l'ensemble des traces et savoir où plante Tomcat.

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Il plante, par exemple, dès que j'utilise 2 fois une requete SQL :
    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
     
             <%
    		 float montant_esth_produits = RequetesSQL.esth_montantProduits(null);
    		 if (montant_esth_produits == -1)
    		 	out.print("<u>pas de ventes</u>");
    		 else
    		 	out.print(montant_esth_produits+" &euro;");
             %>
    et
             <%
    		 float montant_esth_soins = RequetesSQL.esth_montantSoins(null);
     		 if (montant_esth_soins == -1)
    		 	out.print("<u>pas de ventes</u>");
    		 else
    		 	out.print(montant_esth_soins+" &euro;");
             %>
    les 2 methodes (esth_montantSoins et esth_montantProduits) sont identiques si ce n'est la requete SQL qui change bien évidement (oui je vous ai dit que c'était codé a la va vite )

    pourtant je détruit bien la connexion a chaque fois ...

    Je devrais peut etre utiliser autre chose pour gérer mes connexion à la bdd ? (qui est PostGreSQL au passage)
    Genre Hibernate ou Spring ...

  11. #11
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    377
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 377
    Points : 356
    Points
    356
    Par défaut
    Ok je crois savoir.
    Tu as oublié de fermer ton ResultSet !!
    A celle là tu n'y avait pas pensé !!
    Ah oui! Il faut explicitement le fermer.
    Désolé.

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Après avoir fermé les RS et PSTMT , redéployer toute l'application , ... le même probleme ce produit ... ya vraiment quelque chose qui ne tourne pas rond.
    Je vais essayer de passer l'application sur un serveur 5.5.9 ...
    mais pour le moment j'ai des erreurs SQL du genre :
    Cannot create JDBC driver of class '' for connect URL 'null'

    Je vais voir en utilisant Hibernate ....

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    Bon, pour finir je suis resté avec Tomcat 5.0.28 ... tjs le meme probleme, au bout d'un certain nombre de refresh ... il "freeze"

    j'ai changé le driver JDBC pour PostGresql.
    J'utilisais la version 7.3 du driver pour acceder un postgresql 8.0 (peut etre la cause de probleme).
    alors j'essaye d'utiliser la version 8.0 du driver (celle qui correspond pour postgresql 8.0)

    et bien voila autre chose, j'ai des erreurs du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Operation requires a scrollable ResultSet, but this ResultSet is FORWARD_ONLY.
    qui s'affiche dans la console Tomcat.

    ensuite lorsqu'une requete essaye de s'executer j'arrive sur la page d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    type :  Status report
     
    message : [SQLException] Operation requires a scrollable ResultSet, but this ResultSet is FORWARD_ONLY.
     
    description : The server encountered an internal error ([SQLException] Operation requires a scrollable ResultSet, but this ResultSet is FORWARD_ONLY.) that prevented it from fulfilling this request.
    Je suis un peu perdu la

    PS : voici mon fichier de contexte dans : /META-INF/context.xml

    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
     
    <Context path="/administration" docBase="C:\Java\jakarta-tomcat-5.0.28\webapps\administration" debug="1" reloadable="true">
    <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_administration_log" suffix=".txt" timestamp="true"/>
     
       <Resource name="jdbc/postgres" auth="Container"
                  type="javax.sql.DataSource"/>
     
    <ResourceParams name="jdbc/postgres">
      <parameter>
        <name>factory</name>
        <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
      </parameter>
      <parameter>
        <name>driverClassName</name>
        <value>org.postgresql.Driver</value>
      </parameter>
      <parameter>
        <name>url</name>
        <value>jdbc:postgresql://localhost:5432/cityform</value>
      </parameter>
      <parameter>
        <name>username</name>
        <value>postgres</value>
      </parameter>
      <parameter>
        <name>password</name>
        <value>*******</value>
      </parameter>
      <parameter>
        <name>maxActive</name>
        <value>20</value>
      </parameter>
      <parameter>
        <name>maxIdle</name>
        <value>10</value>
      </parameter>
      <parameter>
        <name>maxWait</name>
        <value>-1</value>
      </parameter>
    </ResourceParams>
     
    </Context>

  14. #14
    Membre éprouvé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2002
    Messages : 652
    Points : 1 151
    Points
    1 151
    Par défaut
    la méthode rs.first() doit être remplacée par un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if( rs.next()) {
       ...
    } else {
      // pas de donnée retournée
    }
    first(), last() et autres méthodes de navigations nécessite d'avoir un resultset navigable, ce qui n'est pas le cas avec un statement standard !
    Clic me...
    CV en ligne

    Il y a 10 types de personnes, celui qui connait le binaire, et l'autre...

    Pas de réponse en MP...Merci

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    ok j'ai changé mes requetes SQL avec la methode next().
    Ca fonctionne, merci

    mais j'ai tjs ce probleme de freeze apres un refresh de la page principale maintenant ...

    Vous croyez que ca vient de la base de données ?

  16. #16
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    377
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 377
    Points : 356
    Points
    356
    Par défaut
    Bon bah on a fini par y arriver !!!

  17. #17
    Membre éprouvé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2002
    Messages : 652
    Points : 1 151
    Points
    1 151
    Par défaut
    Bon, déjà, quand tu fais un new Connexion() tu ouvre une connexion que tu ferme sur le champ, peut tu nous expliquer pourquoi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
                if (ds != null) {
                    Connection conn = ds.getConnection();
                    if (conn != null) {
                        connected = true;
                        conn.close();
                        connected = false;
                    }
                }
    et quand tu fais un conn.getConn() tu en ouvre une nouvelle.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        public Connection getConn() throws SQLException {
            return ds.getConnection();
        }//fin getConn
    Clic me...
    CV en ligne

    Il y a 10 types de personnes, celui qui connait le binaire, et l'autre...

    Pas de réponse en MP...Merci

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    oui en effet, j'avais pas réaliser ca (hum hum les erreurs les plus grosses sont sous nos yeux)

    J'ai donc modifier la classe Connexion :
    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
     
    package be.cityform.administration.sql;
     
    import java.sql.Connection;
    import java.sql.SQLException;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.sql.DataSource;
     
    public class Connexion {
     
        /** La référence au DataSource */
        private DataSource ds = null;
     
        /**
         * Initialise la connexion au DataSource
         */
        public void init() {
            try {
                Context initContext = new InitialContext();
                Context envContext = (Context) initContext.lookup("java:/comp/env");
                ds = (DataSource) envContext.lookup("jdbc/postgres");
     
                if (ds != null) {
                    Connection conn = ds.getConnection();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }//fin init
     
        /**
         * Retourne la session de connexion
         * 
         * @return Connection
         * @throws SQLException
         */
        public Connection getConn() throws SQLException {
            return ds.getConnection();
        }//fin getConn
     
        public void close () throws SQLException  {
            ds.getConnection().close();
        }//fin close
     
    }//fin Connexion
    et une requete SQL donne désormais :

    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
     
    public static float esth_montantProduits(Date date){
    	    float montant = -1;
     
            // Récupère la connexion au DataSource
            Connexion conn = new Connexion();
     
     
            PreparedStatement pstmt=null;
            ResultSet rs=null;
            try {
                if (date==null){
                    Calendar cal = Calendar.getInstance();
                    date = new Date(cal.getTimeInMillis());
                }
           		pstmt = conn.getConn().prepareStatement("SELECT total_produits FROM esth_livre_caisse WHERE date_debut=?;");
           		pstmt.setDate(1, date);
                rs = pstmt.executeQuery();
     
                if(rs.next()){
                    montant = rs.getFloat("total_produits");
                }
                rs.close();
                pstmt.close();
            }
            catch(SQLException sqle){
                //TODO voir si on voit le message
                System.err.println(sqle.getMessage());
            }
            finally{
                try{
                    conn.close();
                }
                catch(SQLException sqle){}
                conn=null;
            }
            return montant;
    	}//fin esth_montantProduitsEnCours
    c'est deja un peu plus propre ?

  19. #19
    Membre éprouvé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2002
    Messages : 652
    Points : 1 151
    Points
    1 151
    Par défaut
    Heu non, là tu ouvres 3 connexions.

    Une dans la méthode init, une dans la méthode getConn et une troisième dans la méthode close
    Clic me...
    CV en ligne

    Il y a 10 types de personnes, celui qui connait le binaire, et l'autre...

    Pas de réponse en MP...Merci

  20. #20
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 20
    Points : 11
    Points
    11
    Par défaut
    en modifiant un peu le fichier de contexte
    en mettant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        <parameter>
          <name>maxWait</name>
          <value>10000</value>
        </parameter>
    j'obtiens, lorsque je rafraichit 2 ou 3 fois, l'exception :

    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
     
    org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool exhausted
    	at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:103)
    	at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
    	at be.cityform.administration.sql.Connexion.<init>(Connexion.java:24)
    	at be.cityform.administration.sql.RequetesSQL.datesLivreCaisse(RequetesSQL.java:618)
    	at org.apache.jsp.LivresCaisse.liste_jsp._jspService(liste_jsp.java:89)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
    	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    	at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
    	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
    	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
    	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
    	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
    	at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    	at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
    	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
    	at java.lang.Thread.run(Thread.java:595)
    Caused by: java.util.NoSuchElementException: Timeout waiting for idle object
    	at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:756)
    	at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
    	... 34 more
    Ca progresse
    apparement la pool de connexion n'est plus établie .... ou quelque chose comme ca ... donc ca viendrait de la classe Connexion ... non ?

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

Discussions similaires

  1. Docs, Tutoriels et astuces Tomcat et JBoss (US)
    Par Ricky81 dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 13/03/2009, 21h00
  2. [TOMCAT] Tomcat "freeze"...
    Par psylo dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 23/06/2004, 13h33
  3. Context sous Tomcat
    Par EL MANSOURI dans le forum JBuilder
    Réponses: 5
    Dernier message: 28/01/2003, 11h26
  4. Réponses: 4
    Dernier message: 04/12/2002, 11h07
  5. Tomcat + Apache-SOAP
    Par lucho31 dans le forum Services Web
    Réponses: 3
    Dernier message: 17/10/2002, 09h55

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