0 votes

Définir le dossier racine d'Hibernate

J'utilise Hibernate dans une application côté serveur de type extension, et je place mes binaires dans le dossier Extensions de l'application serveur. Le problème est que si je lance le serveur, le dossier Root est le dossier Root de l'application serveur, et non le Root des binaires. Ainsi, Hibernate recherche le fichier de configuration dans ce dossier et essaie de trouver les classes dans ce dossier. Je suppose que cela est lié à la JVM, car le serveur la lance. Le fichier de configuration n'est pas un problème, car je peux y copier mes fichiers de configuration, mais tous les chemins d'accès sont invalides. En conséquence, dans mon fichier de mappage généré, j'ai une classe org.gmate.data.SomeClass.java, mais il ne la trouve pas.

Ma question : Existe-t-il un moyen, une solution ou une solution de contournement qui me permette de définir le dossier racine d'Hibernate comme étant le dossier d'extension, afin qu'il commence à récupérer les classes à partir de là ?

Merci d'avance pour toutes les réponses, gmate

0voto

gmate Points 69

J'ai enfin trouvé la solution à mon problème. Le problème n'était pas le dossier Root supposé comme je le pensais, mais le Class Loader que le serveur utilise. Comme il était dans mon dossier Extensions, un CustomClassLoader chargeait mes classes. et elles n'apparaissaient pas dans le classpath. En déplaçant mes classes dans un fichier jar, et en ajoutant ce fichier jar au classpath, j'ai réussi à utiliser hibernate. L'ajout du dossier Extension au classpath a permis de charger ces classes avec SystemClassLoader, mais les avantages du Custom ClassLoader ont alors disparu.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X