Bonjour tous le monde,

J'ai un projet ou j'utilisais des hbm, je souhaite migrer avec des annotations.
Mais je n'arrive pas a le faire avec une simple table.

Entity
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
@Entity
@NamedQuery(name="message.findByUser", query="SELECT m FROM Message m WHERE m.iduser=:id")
@Table(name="MESSAGE")
public class Message implements Serializable {
 
	/**
         * 
         */
	private static final long serialVersionUID = 1L;
 
	@Id @GeneratedValue
	@Column(name = "id", unique = true, nullable = false)
	private java.lang.Integer _id;
 
	private java.lang.Integer _iduser;
	@Column(name = "audiofile")
	private java.lang.String _audiofile;
	@Column(name = "audio")
	private java.lang.String _audio;
	@Column(name = "name", nullable = false)
	private java.lang.String _name;
 
	public Message () {
	}
 
	public Message (java.lang.Integer _id) {
		this.setId(_id);
	}
 
	public Message (
		java.lang.Integer _id,
		java.lang.Integer _iduser,
		java.lang.String _audiofile,
		java.lang.String _audio) {
 
		this.setId(_id);
		this.setIduser(_iduser);
		this.setAudiofile(_audiofile);
		this.setAudio(_audio);
	}
 
	public java.lang.String getName() {
		return _name;
	}
 
	public void setName(java.lang.String _name) {
		this._name = _name;
	}
 
	public java.lang.Integer getId () {
		return _id;
	}
 
	public void setId (java.lang.Integer _id) {
		this._id = _id;
	}
 
	@Column(nullable = false)
	public java.lang.Integer getIduser () {
		return _iduser;
	}
 
	public void setIduser (java.lang.Integer _iduser) {
		this._iduser = _iduser;
	}
 
	public java.lang.String getAudiofile () {
		return _audiofile;
	}
 
	public void setAudiofile (java.lang.String _audiofile) {
		this._audiofile = _audiofile;
	}
 
	public java.lang.String getAudio () {
		return _audio;
	}
 
	public void setAudio (java.lang.String _audio) {
		this._audio = _audio;
	}
}
hiberntate
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
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
 
<hibernate-configuration>
	<session-factory>
		<!-- local connection properties -->
		<property name="hibernate.connection.url">
			jdbc:mysql://localhost:3306/vxmltree
<!-- 				jdbc:mysql://192.168.1.4:3306/vxmltree -->
		</property>
		<property name="hibernate.connection.driver_class">
			com.mysql.jdbc.Driver
		</property>
<!-- 		<property name="hibernate.connection.username">michael</property> -->
<!-- 		<property name="hibernate.connection.password">wxcQSDaze123</property> -->
		<property name="hibernate.connection.username">root</property>
		<property name="hibernatez.sconnection.password"></property>
<!-- 		property name="hibernate.connection.pool_size"></property -->
		<!-- dialect for DB2 -->
		<property name="dialect">
<!-- 		    org.hibernate.dialect.HSQLDialect -->
			org.hibernate.dialect.DB2Dialect
		</property>
		<property name="hibernate.show_sql">true</property>
		<property name="hibernate.use_outer_join">true</property>
		<property name="hibernate.jndi.class">
			org.hibernate.service.jndi.internet.JndiService
		</property>
		<property name="hibernate.current_session_context_class">thread</property><!-- managed -->
 
		<property name="hibernate.connection.provider_class">
			org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider
		</property>
		<property name="hibernate.c3p0.min_size">5</property>
		<property name="hibernate.c3p0.max_size">20</property>
		<property name="hibernate.c3p0.timeout">300</property>
		<property name="hibernate.c3p0.preferredTestQuery">SELECT 1</property>
		<property name="hibernate.c3p0.max_statements">0</property>
 
		<mapping class="fr.iconsultants.ibox.server.hibernate.entities.Message" />
 
	</session-factory>
</hibernate-configuration>
La factory:
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
public class HibernateFactory {
	private static final SessionFactory sessionFactory;
 
	static {
		try {
	         Configuration configuration = new Configuration();
	            configuration.configure("hibernate.cfg.xml");
	            ServiceRegistryBuilder serviceRegistryBuilder = new ServiceRegistryBuilder().applySettings(configuration
	                            .getProperties());
	            sessionFactory = configuration
	                            .buildSessionFactory(serviceRegistryBuilder.buildServiceRegistry());
 
		}catch(HibernateException ex){
			throw new RuntimeException(
					ex.getMessage(), ex);
		}
	}
 
	public static final ThreadLocal session = new ThreadLocal();
 
	public static Session currentSession(){
		Session s = (Session) session.get();
		if (s == null){
			s = sessionFactory.openSession();
			session.set(s);
		}
		return s;
	}
J'ai bien fait attention au getteur d'iduser, je tiens a signaler que même si je requête sur name, jai le même erreur.

Merci d'avance et bonne journée