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

Persistance des données Java Discussion :

Problème lors de la connexion à une base donnée (erreur d'ejb)


Sujet :

Persistance des données Java

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2017
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Problème lors de la connexion à une base donnée (erreur d'ejb)
    Bonjour,

    Actuellement je développe un petit projet de gestion d'équipements et lors de la connexion de mon client vers la base de données, j'ai une erreur.
    Pour info, ma base de données est sur Postgres lié à Glassfish (ça ping).
    Lors de l’exécution de mon client j'obtiens cette info :

    INFOS: Cannot find javadb client jar file, derby jdbc driver will not be available by default.
    puis l'erreur :
    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
    61
    62
    63
    64
    javax.ejb.EJBException
            at com.sun.ejb.containers.EJBContainerTransactionManager.processSystemException(EJBContainerTransactionManager.java:752)
            at com.sun.ejb.containers.EJBContainerTransactionManager.completeNewTx(EJBContainerTransactionManager.java:702)
            at com.sun.ejb.containers.EJBContainerTransactionManager.postInvokeTx(EJBContainerTransactionManager.java:507)
            at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:4566)
            at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2074)
            at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2044)
            at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:212)
            at com.sun.ejb.containers.EJBObjectInvocationHandlerDelegate.invoke(EJBObjectInvocationHandlerDelegate.java:79)
            at com.sun.proxy.$Proxy233.maintenanceEquip(Unknown Source)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
            at java.lang.reflect.Method.invoke(Unknown Source)
            at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie.dispatchToMethod(ReflectiveTie.java:143)
            at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:173)
            at com.sun.corba.ee.impl.protocol.ServerRequestDispatcherImpl.dispatchToServant(ServerRequestDispatcherImpl.java:528)
            at com.sun.corba.ee.impl.protocol.ServerRequestDispatcherImpl.dispatch(ServerRequestDispatcherImpl.java:199)
            at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleRequestRequest(MessageMediatorImpl.java:1549)
            at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleRequest(MessageMediatorImpl.java:1425)
            at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleInput(MessageMediatorImpl.java:930)
            at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:213)
            at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.handleRequest(MessageMediatorImpl.java:694)
            at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.dispatch(MessageMediatorImpl.java:496)
            at com.sun.corba.ee.impl.protocol.MessageMediatorImpl.doWork(MessageMediatorImpl.java:2222)
            at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:497)
            at com.sun.corba.ee.impl.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:540)
    Caused by: java.lang.IllegalStateException: Unable to retrieve EntityManagerFactory for unitName BiblioHugo
            at com.sun.enterprise.container.common.impl.EntityManagerWrapper.init(EntityManagerWrapper.java:138)
            at com.sun.enterprise.container.common.impl.EntityManagerWrapper._getDelegate(EntityManagerWrapper.java:171)
            at com.sun.enterprise.container.common.impl.EntityManagerWrapper.find(EntityManagerWrapper.java:341)
            at mypack.UtilisationEquipBean.maintenanceEquip(UtilisationEquipBean.java:21)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
            at java.lang.reflect.Method.invoke(Unknown Source)
            at org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)
            at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)
            at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)
            at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)
            at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
            at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)
            at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:73)
            at org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
            at java.lang.reflect.Method.invoke(Unknown Source)
            at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
            at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
            at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)
            at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
            at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
            at java.lang.reflect.Method.invoke(Unknown Source)
            at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
            at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
            at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)
            at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)
            at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)
            at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:205)
            ... 19 more
    La question que je me pose est de savoir si c'est lié au code ou à une partie manquante d'installation de drivers ?

    Voici mon client :
    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
    61
    62
    63
    64
    65
    import mypack.*;
    import javax.naming.*;
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.io.IOException.*;
     
    public class Client {
    		public static void main(String [] args) throws NamingException{
    			try{
    				InitialContext initcont=new InitialContext();
    				UtilisationEquip utilisationequip= (UtilisationEquip)initcont.lookup("mypack.UtilisationEquip") ;
    				boolean menu=true;
    				int choice;
    				String nom,equipId,dateMaint,validdispo, message;
    				boolean dispo=false;
    				BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    				while(menu){
    					System.out.println("Menu : \n0: EXIT\n1: Creer un equipement\n2: Faire la maintenance\n3: Utiliser un équipement\n4: Fin d'utilisation");
    					choice=Integer.parseInt(reader.readLine().substring(0,1));
    					switch(choice){
    						case 0: menu=false;
    								break;
    						case 1: System.out.println("equipId:");
    								equipId=reader.readLine();
    								equipId=equipId.substring(0,3);
    								System.out.println("nom:");
    								nom=reader.readLine();
    								System.out.println("Date de maintenance:");
    								dateMaint=reader.readLine();
    								System.out.println("Dispo :");
    								validdispo=reader.readLine();
    								if(validdispo.equals("true") || validdispo.equals("1")){
    									dispo=true;
    								}
    								utilisationequip.nouveauEquip(equipId,nom,dateMaint,dispo);
    								System.out.println("Equipement : "+ nom +" ajouté");
    								dispo=false;
    								break;
    						case 2: System.out.println("equipId:");
    								equipId=reader.readLine();
    								equipId=equipId.substring(0,3);
    								System.out.println("Nouvelle date de maintenance:");
    								dateMaint=reader.readLine();
    								utilisationequip.maintenanceEquip(equipId,dateMaint);
    								System.out.println("\nEquipement valide jusqu'au  : "+dateMaint);
    								break;	
    						case 3: System.out.println("equipId:");
    								equipId=reader.readLine();
    								equipId=equipId.substring(0,3);
    								message =utilisationequip.reservationEquip(equipId);
    								System.out.println(message);
    								break;
     
    						/*case 4:	System.out.println("equipId:");
    								equipId=reader.readLine();
    								equipId=equipId.substring(0,3);
    								message =utilisationequip.rendreLivre(equipId);
    								System.out.println(message);	*/	
    					}
    				}
    			}catch(Exception e){
    			e.printStackTrace();
    			}
    		}
    }
    Et mon persistence.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
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence xmlns="http://java.sun.com/xml/ns/persistence"
    			 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    			 version="1.0" 
    			 xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
    			http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
    		<persistence-unit name="BiblioHugo">
    			<jta-data-source>jdbc/biblio</jta-data-source>
    			<properties>
    			<property name ="javax.persistence.jdbc.driver"
    			value ="org.postgresql.Driver"/>
    			<property name ="javax.persistence.jdbc.url"
    			value="jdbc:postgresql://localhost:5432/biblio"/>
    			<property name="javax.persistence.jdbc.user" value="postgres"/>
    			<property name ="javax.persistence.jdbc.password" value ="admin"/>
    			</properties>
    		</persistence-unit>
    </persistence>
    Merci pour votre aide

  2. #2
    Membre chevronné Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Points : 2 120
    Points
    2 120
    Par défaut
    salut,
    tu peux regarder ici .
    la solution s´y trouve.

    Eric

Discussions similaires

  1. connexion à une base donnée distant
    Par ayeb hichem dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 17/11/2010, 16h55
  2. [MySQL] Connexion à une base données mysql à distance
    Par jaljal dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 25/08/2009, 13h43
  3. Problèmes d'accès lors de la connexion à une base
    Par Anass_Casablanca dans le forum MySQL
    Réponses: 1
    Dernier message: 04/08/2008, 13h07
  4. Réponses: 6
    Dernier message: 11/02/2008, 13h48
  5. Réponses: 19
    Dernier message: 14/01/2008, 14h52

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