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

Java EE Discussion :

Erreur au niveau de la récuperation du home [EJB]


Sujet :

Java EE

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 135
    Points : 46
    Points
    46
    Par défaut Erreur au niveau de la récuperation du home
    Bonjour,

    J'ai voulu faire uun programme de test sur les EJB, pour cela j'ai suivi le tutorial de jm.doudou sur les EJB le est que quand j'execute le code j'obtient un erreur au niveau de la récuperation du home au niveau du context

    est ce que qq1 peut m'aider mon erreur est un probleme d'accès apparement
    Elle intervient des que je fais

    ref = context.lookup("TestEJB");

    Mon fichier de config ejb-jar.xml
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    <ejb-jar>
      <description>Descripteur de déploiement du compteur</description>
      <display-name>TestEJB</display-name>
      <enterprise-beans>
        <session>
          <description>TestEJB</description>
          <display-name>TestEJB</display-name>
          <ejb-name>TestEJB</ejb-name>
          <home>com.ujoodha.test.ejb.MonPremierEJBHome</home>
          <remote>com.ujoodha.test.ejb.MonPremierEJB</remote>
          <ejb-class>com.ujoodha.test.ejb.MonPremierEJBBean</ejb-class>
          <session-type>Stateful</session-type>
          <transaction-type>Container</transaction-type>
        </session>
      </enterprise-beans>
      <assembly-descriptor>
        <container-transaction>
            <method>
              <ejb-name>TestEJB</ejb-name>
              <method-name>*</method-name>
            </method>
            <trans-attribute>Required</trans-attribute>
        </container-transaction>
       </assembly-descriptor>
    </ejb-jar>
     
    et jboos.xml
    [code]
    <jboss>
     
       <unauthenticated-principal>nobody</unauthenticated-principal>
     
    	<enterprise-beans>
    	    <session>
    		 	<ejb-name>TestEJB</ejb-name>
    	     	<jndi-name>ejb/TestEJB</jndi-name>
    			<configuration-name>Standard Stateless SessionBean</configuration-name>     	
    		</session>
    	</enterprise-beans>
     
       <resource-managers>
       </resource-managers>
     
    </jboss>
    [/code]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Exception in thread "main" java.security.AccessControlException: access denied (java.net.SocketPermission 230.0.0.4 connect,accept,resolve)
    	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
    	at java.security.AccessController.checkPermission(AccessController.java:427)
    	at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
    	at java.lang.SecurityManager.checkMulticast(SecurityManager.java:1188)
    	at java.net.MulticastSocket.joinGroup(MulticastSocket.java:269)
    	at org.jnp.interfaces.NamingContext.discoverServer(NamingContext.java:1254)
    	at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1382)
    	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:579)
    	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:572)
    	at javax.naming.InitialContext.lookup(InitialContext.java:351)
    	at com.ujoodha.test.ejb.TestClient.main(TestClient.java:42)
    Le code de test est le suivant
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    		Properties prop = null;
    		Context context = null;
    		Object ref = null;
    		MonPremierEJBHome home = null;
    		MonPremierEJBBean bean = null;
     
     
    		//System.setProperty("java.security.policy", "client.policy");
    		if (System.getSecurityManager() == null)
    			System.setSecurityManager(new RMISecurityManager()); 
     
    		prop = new Properties();
    		prop.put(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
    		prop.put(Context.PROVIDER_URL,"localhost:1099");
     
    		try {
    			context = new InitialContext(prop);
    			if(context != null)
    				System.out.println("OK");
    			else
    				System.err.println("NO OK");
     
    			ref = context.lookup("TestEJB");
     
    			// gestion du cycle de vie
    			try {
    				if( javax.rmi.PortableRemoteObject.narrow(ref,MonPremierEJBHome.class) == null )
    						System.out.println("La construvtion du home est impossible)");
     
    				home = (MonPremierEJBHome) javax.rmi.PortableRemoteObject.narrow(ref,MonPremierEJBHome.class);
     
    				try {
    					if(home != null)
    					{
    						System.out.println("OK");
    						home.create();
    					}
    					else
    						System.out.println("TestClient.main()");
     
    				} catch (RemoteException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				} catch (CreateException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				}
     
    			} catch (ClassCastException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			}
    //			bean = 
    //			System.out.println(bean.message());
    			//bean.r
    		} catch (NamingException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}


    [Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    Ton problème ne viendrait pas de la protection de ton ejb car j'ai l impression que tu utilises la securite au niveau de ton ejb

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
       <unauthenticated-principal>nobody</unauthenticated-principal>

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    Content pour toi que ca soit résolu...
    Peux tu expliquer à la communauté comment tu as réglé le problème (suite à ma remarque précédente)!!

    Merci

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 135
    Points : 46
    Points
    46
    Par défaut
    j'ai rien change dans mon fichier xml.

    j'ai rajoute une permission dans le fichier java.policy pour que toutes les connections soient accepte mais c'est pas la meilleur solution.

    J'essaie de voir si j'en trouve une autre

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

Discussions similaires

  1. Erreur au niveau du link lors de la création de l'ocx
    Par soso78 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 15/11/2007, 15h15
  2. Réponses: 2
    Dernier message: 19/06/2007, 11h42
  3. Réponses: 11
    Dernier message: 11/11/2006, 12h20
  4. [VBA] erreur au niveau du code
    Par torNAdE dans le forum Access
    Réponses: 9
    Dernier message: 26/07/2006, 14h33
  5. [phpBB] Erreur au niveau de la base suite à mise à jour
    Par Goundy dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 05/03/2006, 14h50

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