Génération classe mapping avec synchronizer non conforme
Bonjour à tous,
- Je vous présente le Sujet de ce topic :
J'utilise Hibernate 3.2.6 pour mapper ma base de mysql 5, via flexbuilder 3. Le mapping ce passe correctement me créant mes *.hbm (malgré toute fois des souci de "generator" etc).
S'en suis le désir de créer mes classes de persistances (si je ne me trompe de vocabulaire). C'est à dire créer ma classe java image de ma table en mysql via le mapping fait précédemment.
- Pour ce faite j'utilise l'automatisation de l'outil "hibernate synchronizer."
Mon fichier .hbm =>hibernate sycnronizer => synchronize files.
J'obtiens mes classes en java (maclasse.java, _BaseRootDao, Basemaclasse.java, BasemaclasseDao.java,_ rootDao.java, maclasseDao.java)
Le problème intervient dans les fichiers _BaserootDAO.java et basemaclasseDAO.java, la génération me fournit des "imports" sous forme "net.sh.hibernate.etc.."
Ceci était valable pour hibernate 2.0, hors j'utilise hibernate 3.2.6, les import étant "org.hibernate.etc*" , générant donc des erreur d'import non résolvable.
C'est donc assez ennuyant de générer un code qu'on doit modifier pour non conformité:
voici mes jars :
antlr-2.7.6.jar
asm-attrs.jar
asm.jar
backport-util-concurrent.jar
c3p0-0.9.1.jar
cfgatewayadapter.jar
cglib-2.1.3.jar
commons-codec-1.3.jar
commons-collections-2.1.1.jar
commons-httpclient-3.0.1.jar
commons-logging-1.0.4.jar
concurrent-1.3.2.jar
dom4j-1.6.1.jar
ehcache-1.2.3.jar
ejb3-persistence.jar
flex-messaging-common.jar
flex-messaging-core.jar
flex-messaging-opt.jar
flex-messaging-proxy.jar
flex-messaging-remoting.jar
hibernate-annotations.jar
hibernate-commons-annotations.
hibernate-entitymanager.jar
hibernate-testing.jar
hibernate3.jar
javassist.jar
jta.jar
log4j-1.2.11.jar
maven-ant-tasks.jar
mysql-connector-java-3.1.12-bi
mysql-connector-java-5.1.7-bin
slf4j-api-1.5.8.jar
slf4j-log4j12.jar
xalan.jar
Je l'ais mets, pensant mon problème venir de là, ayant pourtant fait attention :s. (oui il y a deux jar mysql et slf4 mais ce n'est pas le souci)
hibernate.cfg.xml
Code:
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
|
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<div style="margin-left:40px"><session-factory></div>
<!-- local connection properties -->
<property name="hibernate.connection.url"> jdbc:mysql://localhost:3306/matable
</property>
<property name="hibernate.connection.driver_class">
org.gjt.mm.mysql.Driver
</property>
<property name="hibernate.connection.username">monnom</property>
<property name="hibernate.connection.password">monpasse</property>
<!-- property name="hibernate.connection.pool_size"></property -->
<!-- dialect for MySQL -->
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="hibernate.show_sql">false</property>
<property name="hibernate.use_outer_join">true</property>
<!--
<property name="hibernate.transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property>
<property name="jta.UserTransaction">java:comp/UserTransaction</property>
//-->
<property name="hibernate.transaction.factory_class">
org.hibernate.transaction.JDBCTransactionFactory
</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">
org.hibernate.cache.NoCacheProvider
</property>
<mapping resource="MapHbm/maclasse.hbm" />
<div style="margin-left:40px"></session-factory></div></hibernate-configuration> |
Ma connexion à la base se fait bien, j'en retire des données (qui me parait assez lourde déjà à exécuté de plus alors que ce n'est que le début -_-)
L'autre problème et la génération dans ces classes aussi du type "Session" qui dans la version 3.* est substitué par l'interface org.hibernate.classic.session et que je dois donc modifier aussi grrr.
Avez vous une idée pour empêcher la génération de ces d'eux erreur ?