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 :

problème de connexion entre Tomcat 4.1 et Oracle 9i


Sujet :

Tomcat et TomEE Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 5
    Points
    5
    Par défaut problème de connexion entre Tomcat 4.1 et Oracle 9i
    Bonjour,

    j'ai un petit souci que je n'arrive pas à résoudre. En effet, je dois réaliser un travail de reporting pour une entreprise avec une architecture à 3 niveaux :
    client, serveur d application et serveur de base de données.
    Mon problème se situe au niveau du serveur d'application TOMCAT car je n'arrive pas à effectuer de liaison avec la base de données Oracle. Je suis tout d'abord passé par le service d'administration de TOMCAT puis restant bredouille je me suis aventuré dans la configuration du fichier serveur.xml dans le dossier conf mais je reste encore et toujours sans résultat.
    Quelqu'un pourrait-il m'aider s'il vous plait ?
    Merci d'avance

  2. #2
    Membre éprouvé Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Points : 1 154
    Points
    1 154
    Par défaut
    Le mieux est d'installer le module d'administration de tomcat, qui va te permettre de créer ce qu'on appelle un "datasource", qui représente un raccourci vers ta base de données.
    Ensuite depuis une servlet, tu pourras récupérer ce datasource, et en obtenir une connexion à travers laquelle tu pourras exécuter des requetes SQL.

    edit: dejà, petit préalable: es-tu sur que ta connexion soit accessible depuis le poste où est installé tomcat?
    Veuillez agréer nos sentiments les plus distingués. Soyez assurés de notre entière collaboration, bien à vous pour toujours et à jamais dans l'unique but de servir l'espérance de votre satisfaction, dis bonjour à ton père et à ta mère, bonne pétanque, mets ton écharpe fais froid dehors.

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    oui j'en suis sur mais par contre en ce qui concerne le module d'administration je n'en ai pas eu besoin. J'ai réussi à accéder à l'administration de TOMCAT sans le télécharger. Mais si tu veux bien continuer ça m'intéresse car j'ai aussi un problème avec un datasource dans mon servlet java sur éclipse donc d'après ce que tu m'as dit il me faut un datasource pour communiquer avec ma base et non juste configurer le fichier serveur.xml.
    Mais comment concevoir ce datasource s'il te plait ?
    Merci pour ton aide elle m'est très précieuse.

  4. #4
    Membre éprouvé Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Points : 1 154
    Points
    1 154
    Par défaut
    As-tu suivi ce tutorial:
    datasource how-to

    Il t'indique comment ajouter un datasource à ton serveur. Il faut également rajouter les drivers JDBC qui vont permettre à tomcat de gérer les connexions à cette base (pour Oracle, tu dois rechercher un fichier du type ojdbc14.jar et le placer dans le dossier common/lib)

    Ensuite pour l'appeller depuis ta servlet, tu le recherche comme ça depuis ta servlet:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Context ctx;
    ctx = new InitialContext();
    DataSource ds = (DataSource) ctx.lookup("java:comp/env/nomDeTaBase");
    Connexion conn = ds.getConnection();
    Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
    rst = stmt.executeQuery(ta requete);
    Veuillez agréer nos sentiments les plus distingués. Soyez assurés de notre entière collaboration, bien à vous pour toujours et à jamais dans l'unique but de servir l'espérance de votre satisfaction, dis bonjour à ton père et à ta mère, bonne pétanque, mets ton écharpe fais froid dehors.

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    Si j'ai bien compris, il faut donc que je modifie les fichiers de configuration serveur et web.xml. Pour les drivers, je les ai depuis le début donc c'est bon.
    Petite question bête : je mets quoi à la place de "ta requête" ? c'est le genre : "select * from dual" pour tester la base ?

  6. #6
    Membre éprouvé Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Points : 1 154
    Points
    1 154
    Par défaut
    Personnellement je n'ai jamais eu beaucoup de succès en mettant mon datasource dans le serveur.xml, j'ai toujours fini par le rajouter dans un ficheir à part (nom_de_ta_servlet.xml) que tu place dans un des sous-dossiers du dosier conf.
    Le truc c'est que je n'ai jamais bossé sous tomcat 4 donc je ne peux pas te dire exactement comment j'ai fait (je sais que l'arborescence des dossiers a changé).

    Concernant la requete, tu as deux méthodes importantes sur l'objet stmt:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     ResultSet executeQuery(Sting param)
    où param est une string du type "SELECT * FROM dual" (après il peut s'agir de n'importe quelle requete SQL de type "SELECT). Elle retourne un objet de la classe ResultSet, te permettant de lire le retour de ta requete SELECT.

    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int executeUpdate(Sting param)
    où param est une requete de modification (c'est à dire toutes les requetes de type INSERT, UPDATE, DELETE, etc.).
    Elle te retourne le nombre de champs qui ont été crées/mis à jour/supprimés.
    Veuillez agréer nos sentiments les plus distingués. Soyez assurés de notre entière collaboration, bien à vous pour toujours et à jamais dans l'unique but de servir l'espérance de votre satisfaction, dis bonjour à ton père et à ta mère, bonne pétanque, mets ton écharpe fais froid dehors.

  7. #7
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    D'accord je vais essayer de faire tout ce que tu m'as dit et je te tiens au jus.
    Merci bien

  8. #8
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    J'ai fait toutes les manip une à une et maintenant comment je sais si ca marche ou pas ? comment je vois si TOMCAT communique avec Oracle ?

  9. #9
    Membre actif Avatar de wace
    Inscrit en
    Septembre 2003
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 224
    Points : 263
    Points
    263
    Par défaut
    Citation Envoyé par bryce333 Voir le message
    J'ai fait toutes les manip une à une et maintenant comment je sais si ca marche ou pas ? comment je vois si TOMCAT communique avec Oracle ?
    Tu peux te faire par exemple une servlet de test qui execute une requete SQL dans ta base comme l'explique Jidefix dans sa reponse

    Si le ResultSet est non null apres l'execution de la requete c'est que la connection a ta base est bonne, sinon ben faut chercher pourquoi ca fonctionne pas
    Les hommes naissent et demeurent libres et égaux en droits; les distinctions sociales ne peuvent être fondées que sur l'utilité commune
    [article 1er Declaration Universelle des Droits de l'Homme]
    www.baseball-grizzlys.com

  10. #10
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    La servlet est prête mais je suis en train de galérer pour transformer mon projet en WAR avec Eclipse car je n'ai pas cette option. Il faut que je trouve un moyen si tu as des pistes je suis tout ouï.

  11. #11
    Membre actif Avatar de wace
    Inscrit en
    Septembre 2003
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 224
    Points : 263
    Points
    263
    Par défaut
    Pas besoin de war pour Tomcat

    Tu prends toutes tes classes et tu les colles dans WEB-INF/classes,
    Tu prends tous tes .jar et tu les colles dans WEB-INF/lib

    Tu redemarres ton Tomcat et tu croises les doigts
    Les hommes naissent et demeurent libres et égaux en droits; les distinctions sociales ne peuvent être fondées que sur l'utilité commune
    [article 1er Declaration Universelle des Droits de l'Homme]
    www.baseball-grizzlys.com

  12. #12
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 5
    Points
    5
    Par défaut
    Lol je croise les doigts ? C'est à dire ? Ca risque de ne pas marcher ou quoi ?

  13. #13
    Membre actif Avatar de wace
    Inscrit en
    Septembre 2003
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 224
    Points : 263
    Points
    263
    Par défaut
    Citation Envoyé par bryce333 Voir le message
    Lol je croise les doigts ? C'est à dire ? Ca risque de ne pas marcher ou quoi ?
    Ca dépends si t'as le fluide ou pas ? et si le Sacro saint Dieu du déploiement d'application est avec toi ou pas !!

    Mais si ca compile dans eclipse, je pense que ca devrait fonctionner, enfin la partie Servlet, apres pour l'acces a la base c'est autre chose ca mais on verra en temps voulu
    Les hommes naissent et demeurent libres et égaux en droits; les distinctions sociales ne peuvent être fondées que sur l'utilité commune
    [article 1er Declaration Universelle des Droits de l'Homme]
    www.baseball-grizzlys.com

Discussions similaires

  1. Problème de connexion entre Outlook 2003 et Exchange 2003
    Par beegees dans le forum Exchange Server
    Réponses: 1
    Dernier message: 25/12/2008, 03h19
  2. Problème de connexion entre msde et ebp
    Par cybernetique dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 02/06/2008, 13h18
  3. Problème de connexion entre WebParts "home made"
    Par pcr92 dans le forum SharePoint
    Réponses: 0
    Dernier message: 16/10/2007, 13h39
  4. Problème de connexion entre 3 pc
    Par larimoise dans le forum Administration
    Réponses: 7
    Dernier message: 24/03/2007, 18h34
  5. Problème de connexion avec Tomcat
    Par Mengué georges dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 07/01/2007, 09h03

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