Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1382 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Pool de connexion

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

Pool de connexion

n°544651
Shogun2002
Posté le 20-10-2003 à 10:54:26  profilanswer
 

Bonjour,
j'utilise le connexion de pool de Tomcat, ça marche en faisant des tests avec des fichiers.jsp qui utilisent des classes accédant à la BD
 
Mais quand je teste avec un fichier main, en l'éxécutant dès qu'il y a un accès à la BD il me sort cette erreur :
 

Code :
  1. javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file:  java.naming.factory.initial
  2. at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:640)
  3. at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
  4. at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:280)
  5. at javax.naming.InitialContext.lookup(InitialContext.java:347)
  6. at classes.Echelle.insertBd(Echelle.java:58)
  7. at editionNiveau.echelleListe.creerEchelle(echelleListe.java:22)
  8. at test.main(test.java:24)


 
 
Voici une partie de mon code avec l'accés au pool :

Code :
  1. public int insertBd() {
  2.  PreparedStatement pInsert;
  3.  PreparedStatement pMax;
  4.  String insert =
  5.   "insert into echelle (id,nividsaisi,nividcoll,nomC,nomL) values (?,?,?,?,?)";
  6.  String max = "select max(id) from echelle";
  7.  int leMax = 1;
  8.  try {
  9.   Context ctx = new InitialContext();
  10.   if (ctx == null)
  11.    throw new Exception("Boom - No Context" );
  12.   DataSource ds =
  13.    (DataSource) ctx.lookup("java:comp/env/jdbc/WebApart" );   if (ds != null) {
  14.    Connection conn = ds.getConnection();
  15.    if (conn != null) {
  16.     pMax = conn.prepareStatement(max);
  17.     pMax.clearParameters();
  18.     ResultSet rst = pMax.executeQuery();
  19.     if (rst.next()) {
  20.      leMax = rst.getInt(1);
  21.     }
  22.     pInsert = conn.prepareStatement(insert);
  23.     pInsert.clearParameters();
  24.     pInsert.setInt(1, leMax + 1);
  25.     pInsert.setInt(2, this.nividsaisi);
  26.     pInsert.setInt(3, this.nividcoll);
  27.     pInsert.setString(4, this.nomC);
  28.     pInsert.setString(5, this.nomL);
  29.     pInsert.executeUpdate();
  30.    }
  31.    conn.close();
  32.   }
  33.  } catch (Exception e) {
  34.   e.printStackTrace();
  35.  }
  36.  return leMax;
  37. }


 
Merci de votre aide


Message édité par Shogun2002 le 20-10-2003 à 11:12:46
mood
Publicité
Posté le 20-10-2003 à 10:54:26  profilanswer
 

n°544652
Shogun2002
Posté le 20-10-2003 à 10:55:53  profilanswer
 

C au niveau du Datasource balise [g] qui me dit l'erreur

n°544654
darklord
You're welcome
Posté le 20-10-2003 à 10:57:52  profilanswer
 

bin ton application standalone n'a pas accès au JNDI de ton tomcat c'est tout.
 
(DataSource) ctx.lookup("java:comp/env/jdbc/WebApart" );
 
Il faut etre dans la meme JVM que tomcat pour avoir accès au contexte java:comp/env
 

n°544657
Shogun2002
Posté le 20-10-2003 à 11:00:10  profilanswer
 

Ah ok !
 
et comment on le défini dans son projet Eclipse ?

n°544665
benou
Posté le 20-10-2003 à 11:02:39  profilanswer
 

Shogun2002 a écrit :

connexion de pool


[:kiki]


---------------
ma vie, mon oeuvre - HomePlayer
n°544669
darklord
You're welcome
Posté le 20-10-2003 à 11:05:22  profilanswer
 

:o

n°544671
El_gringo
Posté le 20-10-2003 à 11:06:08  profilanswer
 

Tu ferais mieux d'utiliser un pool de connexion (oui oui : à l'envers, ça n'a pas de sens !) d'une librairie indépendante plutôt que d'utiliser celui de Tomcat...

n°544672
darklord
You're welcome
Posté le 20-10-2003 à 11:06:38  profilanswer
 

Gringo, argumentation souhaitée :o

n°544682
Shogun2002
Posté le 20-10-2003 à 11:14:48  profilanswer
 

En fait je travaille sur des sources installé sur un autre poste que j'accède par le réseau.
 
Comment faire pour que j'utilise le Tomcat du poste distant et ainsi voir les sorties ...
Sinon utilisé ces sources avec mon propre Tomcat, j'ai essayer pas mal de choses, mais à chaque fois les sorties sont affichés sur le Tomcat du poste distant ...

n°544686
benou
Posté le 20-10-2003 à 11:15:51  profilanswer
 

El_gringo a écrit :

oui oui : à l'envers, ça n'a pas de sens !


si mais disons que ca n'a rien à voir ;)


---------------
ma vie, mon oeuvre - HomePlayer
mood
Publicité
Posté le 20-10-2003 à 11:15:51  profilanswer
 

n°544694
darklord
You're welcome
Posté le 20-10-2003 à 11:19:36  profilanswer
 

shogun, ta boite ne peux pas te payer une formation?

n°544704
Shogun2002
Posté le 20-10-2003 à 11:25:13  profilanswer
 

Je suis un JD j'ai pas d'XP ... c pour ça que je suis là

n°544710
El_gringo
Posté le 20-10-2003 à 11:30:02  profilanswer
 

DarkLord a écrit :

Gringo, argumentation souhaitée :o


 
...rester indépendant vis à vis du moteur de servlet ?
 
EDIT:
code spécifique alors qu'il existe des drivers JDBC permettant de manipuler des pools de connexions comme des simples connexions JDBC ?


Message édité par El_gringo le 20-10-2003 à 11:32:14
n°544713
Shogun2002
Posté le 20-10-2003 à 11:33:08  profilanswer
 

Voilà j'utilise la même JVM, mais ça me fait la même erreur.


Message édité par Shogun2002 le 20-10-2003 à 11:33:16
n°544733
darklord
You're welcome
Posté le 20-10-2003 à 11:49:26  profilanswer
 

Shogun2002 a écrit :

Voilà j'utilise la même JVM, mais ça me fait la même erreur.


 
ca m'étonnerait. Comment tu sais que tu es dans la meme JVM?

n°544734
darklord
You're welcome
Posté le 20-10-2003 à 11:49:39  profilanswer
 

El_gringo a écrit :


 
...rester indépendant vis à vis du moteur de servlet ?
 
EDIT:
code spécifique alors qu'il existe des drivers JDBC permettant de manipuler des pools de connexions comme des simples connexions JDBC ?


 
merci :jap:

n°544754
El_gringo
Posté le 20-10-2003 à 12:00:34  profilanswer
 


 
J'en conclus que t'es convaincu ?
J'ai aussi envie de rajouter qu'il se ferait surement moins chier en utilisant ce dont je parle...

n°544788
Shogun2002
Posté le 20-10-2003 à 12:23:13  profilanswer
 

Ok j'essaierai de mettre en place un autre pool de connexion ...
 
J'utilise la même JVM car quand je lance une appli, il execute a partir du tomcat de l'ordi distant, et je viens de configurer mon projet avec la JVM de l'ordi distant "Windows" "Properties" "Java"

n°544816
the real m​oins moins
Posté le 20-10-2003 à 12:48:17  profilanswer
 

y'aurait pas déjà eu 200 topics sur le meme sujet par le meme auteur recemment? :heink:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°544822
benou
Posté le 20-10-2003 à 13:06:35  profilanswer
 

Shogun2002 a écrit :

je viens de configurer mon projet avec la JVM de l'ordi distant "Windows" "Properties" "Java"


que peut bien vouloir dire cette phrase ? [:gratgrat]


---------------
ma vie, mon oeuvre - HomePlayer
n°544824
nraynaud
lol
Posté le 20-10-2003 à 13:08:30  profilanswer
 

the real moins moins a écrit :

y'aurait pas déjà eu 200 topics sur le meme sujet par le meme auteur recemment? :heink:

celui où j'ai demandé ce qu'il y avait dans une connection et où je n'ai jamais eu de réponse ?

n°544827
darklord
You're welcome
Posté le 20-10-2003 à 13:09:23  profilanswer
 

El_gringo a écrit :


 
J'en conclus que t'es convaincu ?
J'ai aussi envie de rajouter qu'il se ferait surement moins chier en utilisant ce dont je parle...


 
je n'avais pas besoin d'être spécialement convaincu. Je voulais juste savoir pourquoi tu lui déconseillais le système de tomcat :)

n°544830
darklord
You're welcome
Posté le 20-10-2003 à 13:10:58  profilanswer
 

Shogun2002 a écrit :

Ok j'essaierai de mettre en place un autre pool de connexion ...
 
J'utilise la même JVM car quand je lance une appli, il execute a partir du tomcat de l'ordi distant, et je viens de configurer mon projet avec la JVM de l'ordi distant "Windows" "Properties" "Java"


 
:sweat:
 
la meme JVM = la meme instance idiot :o
 
Ca veut dire que ton soft tourne avec l'INSTANCE de la JVM qui fait fonctionner tomcat [:kiki]
 
(ce qui est impossible cela dit si tu passes par un public static void main pour lancer ton test)

n°544838
benou
Posté le 20-10-2003 à 13:17:59  profilanswer
 

Code :
  1. import org.apache.catalina.startup.*;
  2. public class Dtc {
  3.    public static void main(String[] args) {
  4.       Bootstrap.main("start" );
  5.    }
  6. }


:o
 
 
[:ddr555]


Message édité par benou le 20-10-2003 à 13:18:52

---------------
ma vie, mon oeuvre - HomePlayer
n°544844
darklord
You're welcome
Posté le 20-10-2003 à 13:23:12  profilanswer
 

:jap:
Excellent. C'est quoi ce truc?
 
:jap:


---------------
Just because you feel good does not make you right
n°544848
benou
Posté le 20-10-2003 à 13:27:00  profilanswer
 

DarkLord a écrit :

:jap:
Excellent. C'est quoi ce truc?
 
:jap:


ben c'est juste ce qui est lancé lors du lancement de tomcat : si tu regardes ce que fais le raccourcit qui est créé lors de l'installe de tomcat, c'est ca :  
D:\utils\j2sdk1.4.2_01\bin\java.exe -jar -Duser.dir="d:\utils\Tomcat 4.127" "d:\utils\Tomcat 4.127\bin\bootstrap.jar" start


---------------
ma vie, mon oeuvre - HomePlayer
n°544851
darklord
You're welcome
Posté le 20-10-2003 à 13:28:12  profilanswer
 

oui mais une fois que Tomcat est lancé, y a pas moyen de relancer un autre process séparé dans la meme JVM ...
 
C'est ca que je voulais dire [:kiki]


---------------
Just because you feel good does not make you right
n°544855
benou
Posté le 20-10-2003 à 13:31:11  profilanswer
 

DarkLord a écrit :

oui mais une fois que Tomcat est lancé, y a pas moyen de relancer un autre process séparé dans la meme JVM ...
 
C'est ca que je voulais dire [:kiki]


 

Code :
  1. import org.apache.catalina.startup.*;
  2. public class Dtc {
  3.    public static void main(String[] args) throws Exception {
  4.       new Thread() {
  5.          public void run() {
  6.             Bootstrap.main("start" );
  7.          }
  8.       }.start();
  9.       while (! false) {
  10.           System.out.println("arrête de raconter n'importe quoi :o" );
  11.           Thread.sleep(1000);
  12.       }
  13.    }
  14. }


:o


Message édité par benou le 20-10-2003 à 15:03:39

---------------
ma vie, mon oeuvre - HomePlayer
n°544856
benou
Posté le 20-10-2003 à 13:31:42  profilanswer
 

ha nan, ok j'ai capté ce que tu voulais dire ...


---------------
ma vie, mon oeuvre - HomePlayer
n°544859
darklord
You're welcome
Posté le 20-10-2003 à 13:40:34  profilanswer
 

[:kiki]


---------------
Just because you feel good does not make you right
n°544860
darklord
You're welcome
Posté le 20-10-2003 à 13:41:08  profilanswer
 

et arrête de faire des while(true) tu risque de donner de mauvaises idées aux autres :o


---------------
Just because you feel good does not make you right
n°544864
Shogun2002
Posté le 20-10-2003 à 13:43:39  profilanswer
 

Merci je viens de comprendre

n°544880
Shogun2002
Posté le 20-10-2003 à 13:51:49  profilanswer
 

Et comment y remedier ?
 
Soit prendre un autre pool de connexion, soit ...

n°545043
benou
Posté le 20-10-2003 à 15:02:57  profilanswer
 

c'est quoi ton problème exacte ???


---------------
ma vie, mon oeuvre - HomePlayer
n°545047
benou
Posté le 20-10-2003 à 15:03:28  profilanswer
 

DarkLord a écrit :

et arrête de faire des while(true) tu risque de donner de mauvaises idées aux autres :o


ce qui faut pas faire pour te faire plaisir :o


---------------
ma vie, mon oeuvre - HomePlayer
n°545057
lorill
Posté le 20-10-2003 à 15:06:57  profilanswer
 

benou a écrit :


ce qui faut pas faire pour te faire plaisir :o


[:rofl]

n°545058
darklord
You're welcome
Posté le 20-10-2003 à 15:07:24  profilanswer
 

benou a écrit :


ce qui faut pas faire pour te faire plaisir :o


 
[:kiki]


---------------
Just because you feel good does not make you right
n°545283
Shogun2002
Posté le 20-10-2003 à 17:05:07  profilanswer
 

benou a écrit :

c'est quoi ton problème exacte ???


 
Salut
 
bon en gros je laisse tomber ce problème ...
 
Je veux juste une méthode assez simple pour developper sur des codes sources par plusieurs personnes (plusieurs postes), tout en laissant les fichiers sur le poste d'origine, en ayant chacun son propre Tomcat de lancé (pour voir eventuellement les erreurs  et ne pas voir les erreurs de son code source s'affiché sur le poste d'origine qui est de l'autre bout de la piece :) ).
 
 
J'ai vu CVS mais bon, ça résout pas le probleme du Tomcat.
 
Merci  :jap:

n°545285
Shogun2002
Posté le 20-10-2003 à 17:09:18  profilanswer
 

ex : je tape http://lepcsource:8080/test/test.jsp
 
Ce test.jsp teste des classes que g crée, mais quand il y a une erreur ou simplement un System.out.println que j'ai implémenter, il me l'affiche sur le Tomcat du "lepcsource".
 
Je sais c logique que ça s'affiche là bas, mais il n'y aurais pas un moyen que j'utilise mon propre Tomcat tout en partageant "en live" les sources ?


Message édité par Shogun2002 le 20-10-2003 à 17:09:59
n°545286
lorill
Posté le 20-10-2003 à 17:10:11  profilanswer
 

mettre la webapp sur un répertoire partagé

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Pool de connexion

 

Sujets relatifs
Connexion a une BDD en VBA Excel[Resolu]Fichier batch ie automated connexion
Windows - vitesse de connexion au réseau localPasser une page d'authentification web et garder la connexion
Comment s'appelle la programmation complète de la connexion a distance[Shell] comment lancer une connexion internet??
[VB.NET] connexion MAPI ?[C#] Connexion internet active
Ldap : connexion automatique via apache[JAVA] et pool de connexion.
Plus de sujets relatifs à : Pool de connexion


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR