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 :

Connection à las base de données : échec


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Minimexé
    Inscrit en
    Août 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Minimexé

    Informations forums :
    Inscription : Août 2009
    Messages : 25
    Par défaut Connection à las base de données : échec
    Depuis que j'essaie de migrer mon application web de Vista à Linux j'ai une exception lors de la connexion à la db qui m'empêche de m'y connecter.

    Voici la trace complète de 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
    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
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
     
    13-avr.-2010 5:51:40 org.apache.coyote.http11.Http11Protocol init
    INFO: Initialisation de Coyote HTTP/1.1 sur http-8080
    13-avr.-2010 5:51:40 org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 1347 ms
    13-avr.-2010 5:51:40 org.apache.catalina.core.StandardService start
    INFO: Démarrage du service Catalina
    13-avr.-2010 5:51:40 org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/6.0.20
    13-avr.-2010 5:51:43 org.apache.catalina.startup.HostConfig deployDescriptor
    ATTENTION: A docBase /var/lib/tomcat6/webapps/ste-emploi inside the host appBase has been specified, and will be ignored
    13-avr.-2010 5:51:45 security.ContextParam contextInitialized
    INFO: Locale = fr
    13-avr.-2010 5:51:52 org.apache.coyote.http11.Http11Protocol start
    INFO: Démarrage de Coyote HTTP/1.1 sur http-8080
    13-avr.-2010 5:51:52 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 11864 ms
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getInstance
    INFO: DBConnection.dbconnection = new DBConnection();
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getConnection
    INFO: Connection == null
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getInstance
    INFO: DBConnection.dbconnection = new DBConnection();
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getConnection
    INFO: Connection == null
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getConnection
    INFO: Connection == null
    13-avr.-2010 5:52:12 security.JSPAccess doFilter
    INFO: URL: Login.do
    13-avr.-2010 5:52:12 security.JSPAccess doFilter
    ATTENTION: OK
    13-avr.-2010 5:52:13 steemploi.persistance.DBConnection getConnection
    INFO: Connection == null
    13-avr.-2010 5:52:13 steemploi.persistance.Table <init>
    GRAVE: Echec de la connection DB
    13-avr.-2010 5:52:13 com.myapp.struts.Login execute
    ATTENTION: NullPointerException dans Login
    13-avr.-2010 5:52:13 com.myapp.struts.Login execute
    ATTENTION: NullPointerException
    java.lang.NullPointerException
    	at steemploi.persistance.TableUtilisateurs.login(TableUtilisateurs.java:106)
    	at com.myapp.struts.Login.execute(Login.java:45)
    	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
    	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
    	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:269)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
    	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:301)
    	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:283)
    	at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:56)
    	at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:189)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
    	at security.Character.doFilter(Character.java:30)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:269)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
    	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:301)
    	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:243)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
    	at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:56)
    	at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:189)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
    	at security.JSPAccess.doFilter(JSPAccess.java:305)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:269)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
    	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:301)
    	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:243)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
    	at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:56)
    	at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:189)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
    	at java.lang.Thread.run(Thread.java:619)
    13-avr.-2010 5:52:13 security.Character doFilter
    INFO: Character UTF-8 : UTF-8 url : /ste-emploi/Login.do

    S'agit-il d'un problème de permissions? J'arrive à me connecter à la db en root en cli sous Linux. Mais la webapp ne fonctionne pas.

    Merci pour toute aide.

    Manuel;

  2. #2
    Membre Expert
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 414
    Par défaut
    Bonjour,

    Difficile pour t'aider, effectivement la connexion ne se fait pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getInstance
    INFO: DBConnection.dbconnection = new DBConnection();
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getConnection
    INFO: Connection == null
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getInstance
    INFO: DBConnection.dbconnection = new DBConnection();
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getConnection
    INFO: Connection == null
    13-avr.-2010 5:52:12 steemploi.persistance.DBConnection getConnection
    INFO: Connection == null
    13-avr.-2010 5:52:12 security.JSPAccess doFilter
    INFO: URL: Login.do
    Sans information, on ne pourra pas t'aider.

  3. #3
    Membre averti
    Homme Profil pro
    Minimexé
    Inscrit en
    Août 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Minimexé

    Informations forums :
    Inscription : Août 2009
    Messages : 25
    Par défaut
    Oui la connection ne se fait pas.
    En fait, je n'ai jamais compris la différence entre la configuration de MySQL sous Windows et MySQL sous Linux.

    Sous Windows, je peux créer un utilisateur par base de données, tandis que sous Linux je n'arrive pas à me connecter à phpMyAdmin avec des utilisateurs autres que "root". Je ne sais pas ce que je dois changer à la config de MySQL pour qu'il accepte les connexions avec mot de passe à partir d'Apache 2 / PHP 5 ou Apache Tomcat.

    Dans ma WebApp JSP:
    Pour le moment le mot de passe "root" (et le nom d'utilisateur) est
    renseigné dans un fichier properties qui est chargé dans une classe (pattern singleton) appelée DBConnection qui charge ce fichier properties et tente de créer un connection pool Apache Tomcat DBCP (je sais pas si c'est au point cette fonctionnalité de Tomcat???).

    C'est effectivement là que ça coince.

    S'il le faut je peux donner des logs plus précis, tout ça m'avait pris un temps de développement et de recherche assez important. Notamment l'API DBCP (= Data Base Connection Pool) a changé et n'est pas la même suivant les versions de Tomcat.

    Voilà pour les détails. Je peux changer le code pour donner des logs plus précis mais là je ne vois pas quoi faire. Je crois que le problème vient de la configuration par défaut sous linux et peut-etre d'un firewall logiciel (en firewall je n'y connais pas grand-chose).

    Je souhaiterais changer cette configuration pour avoir accès aux base de données à partir de mes applications PHP et Tomcat.

    Notez que l'accès à la base de données fonctionne bien avec Joomla mais seulement en root donc je ne vois pas d'où peut venir le problème.

  4. #4
    Membre averti
    Homme Profil pro
    Minimexé
    Inscrit en
    Août 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Minimexé

    Informations forums :
    Inscription : Août 2009
    Messages : 25
    Par défaut Résolu manque connector mysql jdbc
    Finalement j'ai résolu le problème. C'est vrai il n'y avait pas assez de informations dans les logs.

    L'installation du package Tomcat fourni par Ubuntu n'est pas bien faite. Tous les sous-répertoires sont séparés dans différents dossiers du système de fichiers.

    J'ai donc réinstallé Tomcat à partir de l'archive qu'on trouve sur http://tomcat.apache.org et je l'ai installé dans un répertoire. Après un minimum de configuration, j'ai déployé mon application et là j'ai eu une indication plus précise sur l'erreur dans les logs: il me manquait le connector mysql java jdbc. Et c'est tout. Je l'ai téléchargé et copié dans ./lib/ puis j'ai redémarré le serveur Tomcat.

    J'aurais voulu lancer un nouveau topic. Trouver de l'info sur WebSphere (il existe une version gratuite COmmunity Edition et le serveur InfoSphere).

    Si qqn a un lien vers de la documentation en français sur WebSphere, ça pourrait m'aider. Est-ce que WebSphere est beaucoup plus intéressant que Tomcat? Qu'est-ce que ça apporte de plus? Et le "petit" Jetty qu'en pensez-vous?

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

Discussions similaires

  1. [MySQL] Se connecter à deux base de données en même temps ??
    Par leo13 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 20/01/2005, 10h36
  2. Réponses: 8
    Dernier message: 09/11/2004, 12h25
  3. [débutant] Connection à une base de donnée Access
    Par Lorenzox dans le forum JBuilder
    Réponses: 1
    Dernier message: 25/10/2004, 16h28
  4. Connection à une base de données
    Par rodri dans le forum Bases de données
    Réponses: 3
    Dernier message: 28/07/2004, 15h05
  5. Connection à une base de données
    Par rodri dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/07/2004, 13h03

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