Précédent   Forum des professionnels en informatique > Java > Serveurs, conteneurs, et Java EE > GlassFish
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/03/2011, 12h46   #1
Nouveau Membre du Club
 
Homme
Développeur Java
Inscription : novembre 2009
Messages : 23
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Java
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2009
Messages : 23
Points : 31
Points : 31
Par défaut Problème de test d'EJB Eclipse + GlassFish 3

Bonjour,
j'ai développé mon EJB et voila le code correspondant
Code :
1
2
3
4
5
6
7
8
9
 
import javax.ejb.Stateless;
@Stateless
public class ProcessVerif implements ProcessVerifRemote {
public String HelloWorld(String H)
	{
		return "Réponse:"+H+"";
	}
}
et voila le code de mon interface Remote
Code :
1
2
3
4
5
6
7
8
 
package verif;
import javax.ejb.Remote;
 
@Remote
public interface ProcessVerifRemote {
	public String HelloWorld(String h);
}
Le code de mon Application cliente
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
public class TestEJBClient {
 
 
	public static void main(String[] args){
		// TODO Auto-generated method stub
		try{
			System.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.impl.SerialInitContextFactory");
			System.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");
			System.setProperty("org.omg.CORBA.ORBInitialPort", "3700");
			Context ctx = new InitialContext();
 
		ProcessVerifRemote Ptes=(ProcessVerifRemote)
        ctx.lookup("ProcessVerif/remote");
        System.out.println(Ptes.HelloWorld("Hello"));
		}
		catch(NamingException e) {
	         e.printStackTrace();
 
	}
	}
Message obtenu lors de l’exécution de l'application cliente
Code :
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
 
26 mars 2011 12:43:52 com.sun.enterprise.v3.server.CommonClassLoaderServiceImpl findDerbyClient
INFO: Cannot find javadb client jar file, derby jdbc driver will not be available by default.
java.lang.RuntimeException: Orb initialization erorr
	at org.glassfish.enterprise.iiop.api.GlassFishORBHelper.getORB(GlassFishORBHelper.java:148)
	at com.sun.enterprise.naming.impl.SerialContext.getORB(SerialContext.java:365)
	at com.sun.enterprise.naming.impl.SerialContext.getProviderCacheKey(SerialContext.java:372)
	at com.sun.enterprise.naming.impl.SerialContext.getRemoteProvider(SerialContext.java:402)
	at com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:347)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:504)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455)
	at javax.naming.InitialContext.lookup(InitialContext.java:392)
	at TestClient.TestEJBClient.main(TestEJBClient.java:26)
Caused by: java.lang.NullPointerException
	at org.glassfish.enterprise.iiop.api.GlassFishORBHelper.getORB(GlassFishORBHelper.java:120)
	... 8 more
javax.naming.NamingException: Lookup failed for 'ProcessVerif/remote' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [Root exception is javax.naming.NamingException: Unable to acquire SerialContextProvider for SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [Root exception is java.lang.RuntimeException: Orb initialization erorr]]
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:518)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455)
	at javax.naming.InitialContext.lookup(InitialContext.java:392)
	at TestClient.TestEJBClient.main(TestEJBClient.java:26)
Caused by: javax.naming.NamingException: Unable to acquire SerialContextProvider for SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [Root exception is java.lang.RuntimeException: Orb initialization erorr]
	at com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:352)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:504)
	... 3 more
Caused by: java.lang.RuntimeException: Orb initialization erorr
	at org.glassfish.enterprise.iiop.api.GlassFishORBHelper.getORB(GlassFishORBHelper.java:148)
	at com.sun.enterprise.naming.impl.SerialContext.getORB(SerialContext.java:365)
	at com.sun.enterprise.naming.impl.SerialContext.getProviderCacheKey(SerialContext.java:372)
	at com.sun.enterprise.naming.impl.SerialContext.getRemoteProvider(SerialContext.java:402)
	at com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:347)
	... 4 more
Caused by: java.lang.NullPointerException
	at org.glassfish.enterprise.iiop.api.GlassFishORBHelper.getORB(GlassFishORBHelper.java:120)
	... 8 more

Quelqu'un pourrait-il m'expliquer ce qui ne va pas ?

Merci d'avance pour votre aide.
tchernogod est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 28/03/2011, 09h54   #2
Membre Expert

 
Avatar de alexismp
 
Homme Alexis Moussine-Pouchkine
Inscription : janvier 2005
Messages : 1 502
Détails du profil
Informations personnelles :
Nom : Homme Alexis Moussine-Pouchkine

Informations forums :
Inscription : janvier 2005
Messages : 1 502
Points : 1 765
Points : 1 765
Code :
ProcessVerif instance = (ProcessVerif)javax.ejb.embeddable.EJBContainer.createEJBContainer().getContext().lookup("java:global/classes/NewSessionBean");
As-tu vraiment besoin d'une interface remote?
Si tu veux initialiser toi-même le contexte JNDI, tu n'as qu'à avoir lib/gf-client.jar dans ton classpath (le jndi.properties qui s'y trouve se charge du reste).
__________________
http://blogs.sun.com/alexismp
alexismp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2011, 10h35   #3
Invité de passage
 
Homme
Inscription : novembre 2011
Messages : 1
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations forums :
Inscription : novembre 2011
Messages : 1
Points : 1
Points : 1
Bonjour à vous,

Je suis exactement dans la même situation et je me retrouve bloqué également avec cette même erreur.

J'ai bien ajouter gf-client.jar dans le classpath du client mais cela ne change en rien le résultat obtenu et je souhaite conserver mon interface remote.

Est ce que si le problème a été résolu, je puis avoir la marche à suivre utilisée ?

Merci beaucoup de votre aide !
bapsn est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h08.


 
 
 
 
Partenaires

Hébergement Web