2008-12-11 6 views

Répondre

0

Vous pouvez vous en tenir aux tutoriels standard d'hibernation comme la documentation fournie sur hibernate.org ou le livre Gaven Kings, pour utiliser hibernate en combinaison dans un projet eclipse rcp. Le moyen le plus simple serait d'inclure votre code lié à Hibernate et votre config dans le plugin que vous développez actuellement. Par conséquent votre plugin doit dépendre des fichiers jar, chaque projet d'hibernation dépend de. Vous pouvez également fournir ces bibliothèques par un plugin séparé et simplement les exporter. Mais vous devez garder à l'esprit qu'hibernate utilise beaucoup la réflexion et que vos classes persistantes doivent être accessibles pour votre gestionnaire de persistance.

Il y a aussi un très bon tutoriel pour l'intégration d'hibernate en tant que plugin séparé sur http://entwickler.de/zonen/portale/psecom,id,101,online,1082,.html mais malheureusement c'est seulement en allemand.

1

Je voudrais créer un plugin hibernate, qui expose tous les fichiers jar hibernate et exporte les classes contenues. Ma configuration et mes données seraient alors dans un autre plugin qui dépend d'hibernate. Puis, comme Hibernate utilise une réflexion sans lendemain, le plug-in Hibernate doit pouvoir charger des classes à partir des plug-ins qui en dépendent. Pour ce faire, vous devez utiliser la directive Eclipse-BuddyPolicy. Check this documentation on classloading on eclipse that mentions BuddyPolicy

J'ai mis en place un plug-in Kodo JDO en utilisant cette technique et cela fonctionne très bien. Un échantillon de mon Manifest.mf est joint

Manifest-Version: 1.0 
Bundle-ManifestVersion: 2 
Bundle-Name: Solarmetric Kodo 
Bundle-SymbolicName: com.solarmetric.kodo 
Bundle-Activator: com.solarmetric.kodo.KodoPlugin 
Bundle-Localization: plugin 
Require-Bundle: org.eclipse.core.runtime 
Eclipse-AutoStart: true 
Eclipse-BuddyPolicy: global 
Export-Package: com.solarmetric.ant, 
com.solarmetric.apache.commons.collections, 
com.solarmetric.apache.commons.collections.buffer, 
com.solarmetric.apache.commons.collections.collection, 
com.solarmetric.apache.commons.collections.functors, 
com.solarmetric.apache.commons.collections.iterators, 
com.solarmetric.apache.commons.collections.keyvalue, 
Questions connexes