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

JPA Java Discussion :

Test de ma BD


Sujet :

JPA Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Novembre 2010
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 221
    Par défaut Test de ma BD
    slt à vous,je fais des test avec la persistance cependant je un exception dont je n'arrive pas à attrape qui apparait sur
    tous mes Testcase :
    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
       Testcase: testGetAdmin(DBTest.DBTest):        Caused an ERROR
    [PersistenceUnit: NETWORKSERVERPU] class or package not found
    javax.persistence.PersistenceException: [PersistenceUnit: NETWORKSERVERPU] class or package not found
            at org.hibernate.ejb.Ejb3Configuration.addNamedAnnotatedClasses(Ejb3Configuration.java:1092)
            at org.hibernate.ejb.Ejb3Configuration.addClassesToSessionFactory(Ejb3Configuration.java:871)
            at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:758)
            at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:191)
            at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:253)
            at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:125)
            at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:51)
            at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:33)
            at database.DB.getDB(DB.java:51)
            at DBTest.DBTest.setUp(DBTest.java:40)
    Caused by: java.lang.ClassNotFoundException: database.Services
            at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
            at java.lang.Class.forName0(Native Method)
            at java.lang.Class.forName(Class.java:247)
            at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:112)
            at org.hibernate.ejb.Ejb3Configuration.classForName(Ejb3Configuration.java:1008)
            at org.hibernate.ejb.Ejb3Configuration.addNamedAnnotatedClasses(Ejb3Configuration.java:1080)
    comme vous le voiler cet exception est cause par un ClassNotFoundException: dus à non présence de database.Services pourtant cette entity ne fait plus partis de mes entity car je l'ai supprimé,et remplace par database.Service ainsi elle aurait dus disparaitre de mon classpacth.j'ai déjà tout essaye ce dont je savais.Ainsi tu idée,conseil,ou assistance serait la bien venus.
    a++

  2. #2
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut
    Fais une recherche de cette classe dans tout ton projet, sous le control d'eclipse.Si tu ne trouves pas la référence à cette classe, fais un clean de ton projet. Et sinon fais nous voir ton persistence.xml

  3. #3
    Membre très actif
    Inscrit en
    Novembre 2010
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 221
    Par défaut Test de ma BD
    slt et merci vos conseils m'ont permis d'avance dans ma compréhension de la persistance toutefois mon problème n'est pas encore résolut. Après exécution de mon test certain message
    D’erreur apparaisse et je ne sais comment les traites
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      testGetUser   FAILED:expected<datebase,utilisateurs[id=null]was:<null>
    	   testGetAdmin FAILED:expected<datebase,utilisateurs[id=null]was:<null>
    	   testGetAllUser testGetUser FAILED:expected<null>but was :<[datebase.utilisateurs[id=1],datebase.utilisateurs[id=2],datebase.utilisateurs[id=3]]>.
    testDropconact caused an ERROR:javax.persistence.persistenceException:org.hibernate.exception.GenericJDBCException:could not load an entiy:[data.contacts#1]
    Puisque dans ma BD aucun user n'a un id null, est ce un problème de code ou de compréhension.
    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
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    //ma method Getuser
     
        public Utilisateur getUser(String login,String pswd,String host){   
            Utilisateur e=null;
            getEntityManager();
            try{
                query=ges.createQuery("SELECT u FROM Utilisateur u WHERE u.login=:login AND u.pswd=:pswd AND u.profil=:profil");
                query.setParameter("login", login);
                query.setParameter("pswd", pswd);
                query.setParameter("profil",profile.ADMIN);
               e=(Utilisateur)query.getSingleResult();
               if(e==null)
                   throw new IllegalArgumentException("cet utilisateur n'est pas présent dans le système");
                return e;
            }
            catch(Exception ex){
                throw new RuntimeException(ex);
            }
            finally{
                return e;
            }
        }
    	// ma methode Gestadmim
    	    public Utilisateur  getAdmin(String login,String pswd){
          Utilisateur e=null;
            getEntityManager();
            try{
                query=ges.createQuery("SELECT u FROM Utilisateur u WHERE u.login=:login AND e.pwd=:pwd AND u.profil=:profil");
                query.setParameter("login", login);
                query.setParameter("pwd", pswd);
                query.setParameter("profil",profile.ADMIN);
               e=(Utilisateur)query.getSingleResult();
               if(e==null)
                   throw new IllegalArgumentException("cet Administrateur n'est pas présent dans le système");
                return e;
            }
            catch(Exception ex){
                throw new RuntimeException(ex);
            }
            finally{
                return e;
            }
        }
    	//ma methode Getalluser
    	 public List<Utilisateur> getAllUser(){
            List<Utilisateur> alluser=null;
            getEntityManager();
            try{
                 query=ges.createQuery("SELECT u FROM Utilisateur u WHERE u.profil=:profil");
                query.setParameter("profil",profile.USER);
                alluser=(List<Utilisateur>)query.getResultList();
    			return alluser;
            }
            catch(Exception ex){
                throw new RuntimeException(ex);
            }
            finally{
                return alluser;
            }
     
    		//ma methode dropcontact
    		  public void dropcontact(Integer id){
            getEntityManager();
            try{
                Contacts con=ges.find(Contacts.class,id);
                if(con==null){
                   throw  new IllegalArgumentException("ce contact n'existe pas");
                }
                else{
                   ges.getTransaction().begin();
                   ges.remove(con);
                   ges.getTransaction().commit();
                }
            }catch(Exception ex){
                 if(ges.getTransaction().isActive())
                     ges.getTransaction().rollback();
                     throw new RuntimeException(ex);
            }
        }
     
    	 //method de test
    	     @Before
    			public void setUp() {
    			  instance  = DB.getDB();
    			}
     
    				 @After
    			public void tearDown() {
    				instance=null;
    			}
    	 //vérifie l'existence de cet utilisateur		
    		  @Test
        public void testGetUser() {
            System.out.println("getUser");
            String login = "toto";
            String pwd = "tata";
            String host = "127.0.0.1";
            Utilisateur expResult = new Utilisateur();
            Utilisateur result = instance.getUser(login, pwd, host);
            assertEquals(expResult, result);        
        }
     
    	//vérifie la présence de cet administrateur
        @Test
        public void testGetAdmin() {
            System.out.println("getAdmin");
            String login = "admin";
            String pwd = "admin";
            Utilisateur expResult =new Utilisateur();
            Utilisateur result = instance.getAdmin(login, pwd);
            assertEquals(expResult, result);
        }
     
    	 //retourne tous les utilisateurs du système
    	 @Test
        public void testGetAllUser() {
            System.out.println("getAllUser");
            List expResult = null;
            List result = instance.getAllUser();
            System.out.println(result);
            assertEquals(expResult, result);
        }
     
    	//supprime le contact dont l'id est 1
    	   @Test
        public void testDropcontact() {
            System.out.println("Dropcontact");
            Integer IDs = 1;
            instance.dropcontact(IDs);
        }
     
    	//mom fichier persistence.xml 
    	<?xml version="1.0" encoding="UTF-8"?>
    	<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
    	  <persistence-unit name="NETWORKSERVERPU" transaction-type="RESOURCE_LOCAL">
    		<provider>org.hibernate.ejb.HibernatePersistence</provider>
    		<class>database.Contacts</class>
    		<class>database.InnerJoin</class>
    		<class>database.Messages</class>
    		<class>database.Service</class>
    		<class>database.Utilisateur</class>
    		<properties>
    		  <property name="hibernate.connection.username" value="root"/>
    		  <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
    		  <property name="hibernate.connection.password" value=""/>
    		  <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/socialnetwork"/>
    		  <property name="hibernate.cache.provider_class" value="org.hibernate.cache.NoCacheProvider"/>
    		  <property name="hibernate.hbm2ddl.auto" value="update"/>
    		</properties>
    	  </persistence-unit>
    	</persistence>
    Une fois de plus excuse moi de vous accable avec temps de code, mais je vois ne vois comment trouve une solution avec toute ces exception qui sont levé. Ainsi toute idée
    , conseil, ou assistance serais la bien venus.
    a++

  4. #4
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut
    Tes traces d'erreur sont bien confuses, pose un pb à la fois, quel est le test qui ne passe pas? montre nous les traces compplètes...

Discussions similaires

  1. Script test de deux chaine avec if
    Par kacedda dans le forum Linux
    Réponses: 6
    Dernier message: 02/05/2003, 15h38
  2. [XMLRAD] test de nullité
    Par Pm dans le forum XMLRAD
    Réponses: 5
    Dernier message: 29/11/2002, 10h57
  3. test collisions
    Par tatakinawa dans le forum OpenGL
    Réponses: 5
    Dernier message: 08/06/2002, 06h03

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