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

Eclipse Platform Discussion :

[EJB et RCP] connection EJB impossible sous plugin


Sujet :

Eclipse Platform

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 71
    Points : 61
    Points
    61
    Par défaut [EJB et RCP] connection EJB impossible sous plugin
    Bonjour à tous !

    Je développe un plugin Eclipse 3.3 RCP qui fait appel à des EJB 3.0 entités situé sur un serveur JBOSS 4.2.1 .

    Malheureusement, au moment de l'exécution, je reçois une exception de type :

    javax.naming.NoInitialContextException: Cannot instantiate class: org.jnp.interfaces.NamingContextFactory [Root exception is java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory]

    Lorsque je tente de récupérer le contexte EJB dans une extension de type action set (idem pour un modal tool).

    voici mon code :

    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
    Hashtable props = new Hashtable();
    		props.put(
    			Context.INITIAL_CONTEXT_FACTORY,
    			"org.jnp.interfaces.NamingContextFactory");
    		props.put(
    			Context.URL_PKG_PREFIXES,
    			"org.jboss.naming:org.jnp.interfaces");
    		props.put(Context.PROVIDER_URL, "jnp://localhost:1099");
     
    		try {
    			Context ctx = new InitialContext(props);
    		} catch (NamingException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    Je précise que ce même code fonctionne parfaitement dans un projet java classique développé sous eclipse.

    Je pense que c'est un problème de classLoader mais je ne sais pas quoi faire.

    Merci de votre aide !

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 71
    Points : 61
    Points
    61
    Par défaut soluce
    Bon en arpantant pas mal le net, j'ai trouvé une solution :

    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
     
    		ClassLoader clientClassLoader = org.jnp.interfaces.NamingContextFactory.class.getClassLoader() ;
     
    		Thread aThread = Thread.currentThread();
     
    		ClassLoader aLoader = aThread.getContextClassLoader();
     
    		aThread.setContextClassLoader(clientClassLoader);
     
    		Context ctx = null ;
     
    		try {
    			 ctx = new InitialContext(props);
    		} catch (NamingException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
     
    aThread.setContextClassLoader(aLoader); //remet le précédent class loader
    L'utilisation du classe loader de la classe qui pose problème. Par contre le problème de classe non trouvé persiste à l'exécution si vous importez les librairies par le build path du projet. Il faut importer les librairies (jbossall-client.jar, jnp-client.jar, votreEJB.jar) en configurant le fichier plugin.xml (classpath dans l'onglet runtime), ce qui oblige d'ailleur à mettre les .jar dans le répertoire du projet plugin.

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

Discussions similaires

  1. Impossible de connecter une base sous windows 7
    Par jer64 dans le forum Débuter
    Réponses: 1
    Dernier message: 21/11/2011, 23h00
  2. Réponses: 1
    Dernier message: 08/12/2010, 15h03
  3. Interface avec plugin FF impossible sous FF 3.6
    Par Lendar dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 08/02/2010, 10h09
  4. Réponses: 8
    Dernier message: 24/09/2007, 09h43
  5. [EJB][Jboss] Déploiement d'EJB sous Eclpise/Jboss
    Par webspeak dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 19/01/2005, 19h03

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