-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 
Author Message
 Post subject: ClassNotFoundException cote client
PostPosted: Wed Aug 10, 2005 2:55 pm 
Newbie

Joined: Tue May 03, 2005 11:53 am
Posts: 7
Bonjour,
J'utilise hibernate au sein d'un serveur JEE (jonas). Coté client j'ai un client lourd java.
Lorsque coté client j'appelle la méthode findAll de mon bean session j'ai cette erreur :

Code:
java.rmi.UnmarshalException: ClassNotFoundException unmarshalling returnjava.lang.ClassNotFoundException: org.hibernate.collection.PersistentSet (no security manager: RMI class loader disabled)


J'ai codé la méthode de mon DAO de la manière suivante :
Code:
   public Collection findAll() throws InfrastructureException {
      Collection users;
      if (log.isDebugEnabled())
         log.debug("Find all users");
      try {
         users = new ArrayList(session.createCriteria(User.class).list());
      } catch (HibernateException ex) {
         throw new InfrastructureException(ex);
      }
      if (log.isDebugEnabled())
         log.debug(users.size() + " users found");
      return users;
   }


J'utilise donc un ArrayList comme implémentation de Collection.
Je ne comprends donc pas d'ou vient cette erreur.

Je ne souhaite pas inclure hibarnate.jar dans le classpath coté client.
Merci d'avance.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Aug 11, 2005 1:56 am 
Expert
Expert

Joined: Thu Sep 04, 2003 8:23 am
Posts: 368
Ta classe User à certainement un lien vers une autre classe via un Set. Au rechargement Hibernate utilise ses propres implémentations des interfaces de Collection.

Je n'ai jamais fait d'appli Swing avec hibernate mais sur ce que j'ai pu lire à droite à gauche, il est fortement conseillé sinon obligatoire d'avoir le jar d'hiberante côté client

_________________
Seb
(Please don't forget to give credits if you found this answer useful :)


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jun 13, 2008 7:59 am 
Newbie

Joined: Thu Mar 02, 2006 10:59 am
Posts: 8
Location: Paris
Bonjour,
J'ai exactement le même problème, mes EJBs retournent des entités Hibernate coté serveur. Et coté client, je me prend un java.lang.ClassNotFoundException sur des classes Hibernate.

Alors que je ne voudrais pas des jars hibernate coté client, mais qu'il me considère mes entités comme de simple Bean.

Y-a-t-il une solution depuis le temps ?

Merci


Top
 Profile  
 
 Post subject:
PostPosted: Sun Jun 22, 2008 4:31 pm 
Proxool Developer
Proxool Developer

Joined: Tue Aug 26, 2003 10:42 am
Posts: 373
Location: Belgium
Le problème vient - entre autres - du fait que Hibernate utilise ses propres implémentations des collections, ceci afin de permettre le "lazy loading" de ces collections. Il en va de même pour les références vers d'autres entités qui seraient marquées comme "lazy" (ce qui est souvent le cas par défaut).

Essaye donc de désactiver le lazy loading des collections et références à d'autres entitiés (one-to-one et many-to-one), via l'attribute "lazy" (cfr. doc). Dans ce cas, il est possible (pas sûr - faut tester) que tu auras une implémentation de collection standard et donc pas de référence à Hibernate...


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.