Problème Websphere/EJB

Problème Websphere/EJB - Java - Programmation

Marsh Posté le 20-08-2003 à 14:52:27    

Salut!
 
Je suis actuellement en train de m'initier aux EJB sous Websphere.
J'ai un problème quand j'exécute ma classe principale et je n'arrive pas à le résoudre. J'ai une exception!
 
Impossible d'accéder au contexte JNDI : javax.naming.CommunicationException: Caught CORBA.COMM_FAILURE when resolving initial reference=WsnNameService [Root exception is org.omg.CORBA.COMM_FAILURE:   minor code: 3  completed: No]
 

Code :
  1. import java.util.Properties;
  2. import javax.naming.InitialContext;
  3. import javax.naming.Context;
  4. import javax.transaction.UserTransaction;
  5. import javax.rmi.PortableRemoteObject;
  6. public class HelloWorldClient {
  7.     public static void main(String args[]) {
  8.     // Récupération du contexte initial
  9.     Context initialContext = null;
  10.     try {
  11.       initialContext = new InitialContext();
  12.     } catch (Exception e) {
  13.       System.err.println("Impossible d'accéder au contexte JNDI : " + e);
  14.       System.exit(2);
  15.     }
  16.     [...]
  17.     }
  18. }


 
Si qqun peut m'aider, ça serait super sympa :-)
merci!
 

Reply

Marsh Posté le 20-08-2003 à 14:52:27   

Reply

Marsh Posté le 20-08-2003 à 16:25:39    

bin pour que ton context soit valide faut les propriétés de ton serveur jndi qd meme hein :o
 
as tu un jndi.properties dans ton classpath? Parce que ta classe va pas sucer de son pouce ou elle doit se connecter pour choper son contexte


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 16:27:52    

DarkLord a écrit :

bin pour que ton context soit valide faut les propriétés de ton serveur jndi qd meme hein :o
 
as tu un jndi.properties dans ton classpath? Parce que ta classe va pas sucer de son pouce ou elle doit se connecter pour choper son contexte


 
hum justement tu confirmes ce que je pensais ... je suis tombé sur un document parlant du jndi.properties.
J'ai pas du tout ce document et apparemment websphere ne le crée pas (je croyais, feignasse inside)!
Mais ça ne dit pas comment ça marche :-( Je suis un peu perdu, tu peux m'aider stp?  :hello:

Reply

Marsh Posté le 20-08-2003 à 16:31:04    

Scoubidoo a écrit :


J'ai pas du tout ce document et apparemment websphere ne le crée pas (je croyais, feignasse inside)!


 
je ne pense pas qu'on se soit bien compris. Tu as une application standalone, que tu lances en ligne de commande. Il ne fait pas partie de WebSphere. Que tu le lances sur la machine qui host webshpere ou au fin fond de l'afrique ca ne change rien.
 
Le soft que tu lances doit qd meme savoir ou il doit se connecter non? T'es d'accord avec ca.


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 16:33:16    

Code :
  1. import java.util.Properties;
  2. import javax.naming.InitialContext;
  3. import javax.naming.Context;
  4. import javax.transaction.UserTransaction;
  5. import javax.rmi.PortableRemoteObject;
  6. public class HelloWorldClient {
  7.     public static void main(String args[]) {
  8.     // Récupération du contexte initial
  9.     Hashtable env = new Hashtable();
  10.     env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory" );
  11.     env.put(Context.PROVIDER_URL, "iiop://myhost.mycompany.com:900" );   
  12.     Context initialContext = null;
  13.     try {
  14.         initialContext = new InitialContext(env);   
  15.     } catch (Exception e) {
  16.       System.err.println("Impossible d'accéder au contexte JNDI : " + e);
  17.       System.exit(2);
  18.     }
  19.     [...]
  20.     }
  21. }


 
3 secondes de google, mots clés webshpere jndi properties


Message édité par darklord le 20-08-2003 à 16:34:02

---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 16:34:42    

je dois donc le créer puisque ce fichier n'existe pas et après mettre son chemin dans le CLASSPATH, c'est bien ça??
Je viens de lire que le fichier devait ressembler à ça :
 

Code :
  1. #  JNDI configuration
  2. java.naming.factory.initial com.sun.jndi.rmi.registry.RegistryContextFactory
  3. java.naming.provider.url   rmi://200.99.1.2:1099
  4. java.naming.factory.url.pkgs   org.objectweb.jonas.naming


 
Mais faut que je comprenne à quoi ça correspond!


Message édité par Scoubidoo le 20-08-2003 à 16:35:37
Reply

Marsh Posté le 20-08-2003 à 16:35:41    

ca c'est pour Jonas, un application server open source  :sarcastic:  
 
Ca t'arrive de *lire* les infos avant de conclure?


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 16:36:21    

question: tu sais ce que c'est un redbook?


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 16:39:32    

question .... pkoi etre aussi désagréable??????   :o  
 
Tu sais, je cherche depuis pas mal de temps (plein de recherche sous google entre autre). je veux pas qu'on me fasse le truc à ma place. J'aurais préféré trouver la solution tout seul.
 
Je suis NOVICE et donc j'essaie de comprendre le pkoi du comment. On a apparemment pas le droit à l'erreur ici  :pfff:


Message édité par Scoubidoo le 20-08-2003 à 16:41:15
Reply

Marsh Posté le 20-08-2003 à 16:45:56    

Scoubidoo a écrit :

question .... pkoi etre aussi désagréable??????   :o  
 
Tu sais, je cherche depuis pas mal de temps (plein de recherche sous google entre autre). je veux pas qu'on me fasse le truc à ma place. J'aurais préféré trouver la solution tout seul.
 
Je suis NOVICE et donc j'essaie de comprendre le pkoi du comment. On a apparemment pas le droit à l'erreur ici  :pfff:  


 
mais bien sur que si mais montres moi le lien ou tu as trouvé ces propriétés. Je parie que c'est indiqué 2 lignes en haut ou en bas que c'est pour Jonas. Etre novice ne t'oblige pas à te préciper et à poster dès que tu penses avoir trouvé qqch.
 
Et pour ma remaque sur les redbook c'était juste pour te signaler que IBM mettait à la dispostion des développeurs de la documentation TRES complete sur websphere. Et que dans cette doc on t'explique de A à Z avec du code comment faire.
 
Voilà bonne continuation


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 20-08-2003 à 16:45:56   

Reply

Marsh Posté le 20-08-2003 à 16:58:49    

Désolé je me suis un peu enervé ... mais à chaque fois que je poste ici, c'est limite si "on m'aggresse" (enfin bon passons).
 
Concernant les lignes, c'est pas marqué explicitement que c'était pour Jonas d'ou mon erreur mais c'est vrai qu'en interprétant, c'était pas trop pour ws.
 
Pour le Redbook, je vais aller voir ça de suite.
 
Merci  :)

Reply

Marsh Posté le 20-08-2003 à 18:02:12    

t'es pas obligé de passer par le fichier properties, pour tester tu peux faire comme le bout de code donné par darklord...
 
ce qu'il te faut, je pense que tu as compris maintenant, c'est configurer ton contexte JNDI, c'est tout, c'est ce qu'il te manquait ;)  
 
Tu devrais jeter un oeil aux docs JNDI.
 
Le principe, en gros, c'est que c'est un annuaire qui va recenser les "services" mis à disposition sur le serveur. Pour te connecter à l'annuaire, que tu sois à distance ou en local, il faut lui donner les infos de connexion.

Reply

Marsh Posté le 20-08-2003 à 19:13:29    

Oui merci bcp :-)
Le problème, c'est que même avec ça .... bin ça veut pas marcher, tjrs la meme exception  :cry:  
Je me demande bien ce qui va pas.

Reply

Marsh Posté le 20-08-2003 à 20:19:28    

Scoubidoo a écrit :

Oui merci bcp :-)
Le problème, c'est que même avec ça .... bin ça veut pas marcher, tjrs la meme exception  :cry:  
Je me demande bien ce qui va pas.


 
t'as mis quoi comme propriétés?


---------------
Just because you feel good does not make you right
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed