Bonjour,

je poursuis le développement d'un projet et je tombe sur erreur dont je ne comprend pas :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
...
INFO: building session factory
19-sept.-2007 11:20:26 net.sf.hibernate.impl.SessionFactoryObjectFactory addInstance
INFO: Not binding factory to JNDI, no JNDI name configured
Exception in thread "main" net.sf.hibernate.ObjectNotFoundException: No row with the given identifier exists: 1, of class: User.DtbUser
	at net.sf.hibernate.ObjectNotFoundException.throwIfNull(ObjectNotFoundException.java:24)
	at net.sf.hibernate.impl.SessionImpl.load(SessionImpl.java:1921)
	at TestHibernate1.main(TestHibernate1.java:33)
Lorsque je pointe sur ma base de dev, je n'ai pas de problème.
Le problème apparait seulement quand je pointe sur ma base de prod et quand j'utilise des session.load.
(j'ai les même données en dev et en prod)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
Query q2 = session.createQuery("from DtbUser where User_Num = 1");
DtbUser pers = (DtbUser) q2.list().get(0);
System.out.println("nom1 = " + pers.getUserName());
le code ci dessus fonctionne tout le temps

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
DtbUser personne = (DtbUser) session2.load(DtbUser.class, new Integer(1));
le code ci dessus fonctionne seulement en dev mais pas en prod

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
List list = session.find("from DtbUser");
Iterator it = list.iterator();
le code ci dessus fonctionne tout le temps


voici mon fichier de configuration
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
 
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration
    PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
 
<hibernate-configuration>
	<session-factory>
		<!-- local connection properties -->
		<property name="hibernate.connection.url">
			jdbc:mysql://10.10.2.1:3306/test
		</property>
		<property name="hibernate.connection.driver_class">
			org.gjt.mm.mysql.Driver
		</property>
		<property name="hibernate.connection.username">xxx</property>
		<property name="hibernate.connection.password">xxx</property>
		<!-- property name="hibernate.connection.pool_size"></property -->
		<!-- dialect for MySQL -->
		<property name="dialect">
			net.sf.hibernate.dialect.MySQLDialect
		</property>
		<property name="hibernate.show_sql">true</property>
		<property name="hibernate.use_outer_join">true</property>
		<property name="hibernate.transaction.factory_class">
			net.sf.hibernate.transaction.JTATransactionFactory
		</property>
		<property name="jta.UserTransaction">
			java:comp/UserTransaction
		</property>
		<mapping resource="DtbUser.hbm" />
	</session-factory>
</hibernate-configuration>

voici mon fichier de mapping
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
 
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
	"-//Hibernate/Hibernate Mapping DTD//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >
 
<hibernate-mapping package="User">
	<class name="DtbUser" table="DTB_USER">
 
		 <id name="Id" type="integer">
		 <column name="User_Num" sql-type="integer"/>
		 <generator class="vm" />
		 </id>
 
		<property name="UserOrderBook" type="integer">
		<column name="User_order_book" sql-type="int(2)" not-null="true"/>
		</property>
 
 		<property name="UserPwd" type="string">
		<column name="User_Pwd" sql-type="char(10)" not-null="true"/>
		</property>
 
 		<property name="UserFirst" type="boolean">
		<column name="User_First" sql-type="int(1)" not-null="false"/>
		</property>
 
 		<property name="UserDatePwd" type="date">
		<column name="User_date_pwd" sql-type="char(10)" not-null="true"/>
		</property>
 
 		<property name="UserStatut" type="boolean">
		<column name="User_Statut" sql-type="int(1)" not-null="false"/>
		</property>
 
 		<property name="UserCode" type="integer">
		<column name="User_Code" sql-type="int(10)" not-null="false"/>
		</property>
 
 		<property name="UserId" type="string">
		<column name="User_Id" sql-type="char(50)" not-null="true"/>
		</property>
 
 		<property name="UserNbConnection" type="integer">
		<column name="User_nb_connection" sql-type="int(11)" not-null="true"/>
		</property>
 
 		<property name="UserName" type="string">
		<column name="User_Name" sql-type="char(10)" not-null="true"/>
		</property>
 
 		<property name="UserNbCentConnection" type="integer">
		<column name="User_nb_cent_connection" sql-type="int(11)" not-null="true"/>
		</property>
 
	</class>
</hibernate-mapping>

je vous remercie par avance pour votre aide.