bonsoir, je bute sur un problème avec un entity bean, lorsque je fais des requêtes, le serveur me sort une erreur pourtant je ne vois pas ce qui ne va pas.
En gros une table user(nuser number, nom varchar, pass varchar) est mappé avec un bean entité User

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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package entityPackage;
 
import java.io.Serializable;
import java.math.BigDecimal;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
 
 
@Entity
@Table(name = "user")
@NamedQueries( {
        @NamedQuery(name = "User.findByNuser", query = "SELECT u FROM User u WHERE u.nuser = :nuser"),
        @NamedQuery(name = "User.findByNom", query = "SELECT u FROM User u WHERE u.nom = :nom"),
        @NamedQuery(name = "User.findByPass", query = "SELECT u FROM User u WHERE u.pass = :pass")
    })
public class User implements Serializable {
 
    @Id
    @Column(name = "nuser", nullable = false)
    private BigDecimal nuser;
 
    @Column(name = "nom", nullable = false)
    private String nom;
 
    @Column(name = "pass", nullable = false)
    private String pass;
 
    /** Creates a new instance of User */
    public User() {
    }
 
 
    public User(BigDecimal nuser) {
        this.nuser = nuser;
    }
 
 
    public User(BigDecimal nuser, String nom, String pass) {
        this.nuser = nuser;
        this.nom = nom;
        this.pass = pass;
    }
 
    public BigDecimal getNuser() {
        return this.nuser;
    }
 
 
    public void setNuser(BigDecimal nuser) {
        this.nuser = nuser;
    }
 
 
    public String getNom() {
        return this.nom;
    }
 
    public void setNom(String nom) {
        this.nom = nom;
    }
 
 
    public String getPass() {
        return this.pass;
    }
 
 
    public void setPass(String pass) {
        this.pass = pass;
    }
 
    @Override
    public int hashCode() {
        int hash = 0;
        hash += (this.nuser != null ? this.nuser.hashCode() : 0);
        return hash;
    }
 
 
    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof User)) {
            return false;
        }
        User other = (User)object;
        if (this.nuser != other.nuser && (this.nuser == null || !this.nuser.equals(other.nuser))) return false;
        return true;
    }
 
 
    @Override
    public String toString() {
        return "entityPackage.User[nuser=" + nuser + "]";
    }
 
}
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
@Stateless
public class HelloSessionBean implements HelloSessionLocal {
 
    @PersistenceContext(unitName="monBean")
    private EntityManager em;
 
 
    /** Creates a new instance of HelloSessionBean */
    public HelloSessionBean() {
    }
 
    public String getHello(){
        return "hello";
    }
    public String chercheUser()  {
       Object results;
 
 
 
 
       Query q =  em.createQuery("User.findByNom'").setParameter("nom","dam");
       List<User> liste = q.getResultList();
 
 
 
       return "";
 
    }
 
}
Pourtant mon persistence.xml à l'air correct
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
  <persistence-unit name="monBean" transaction-type="JTA">
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
    <jta-data-source>java:/MYSQLDAMLUDO</jta-data-source>
    <class>entityPackage.User</class>
    <exclude-unlisted-classes>true</exclude-unlisted-classes>
    <properties>
      <property name="hibernate.show_sql" value="true"/>
    </properties>
  </persistence-unit>
</persistence>
j'ai ce problème là et je sèche :s
javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute query
org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:69)
org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:197)
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:78)
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:181)
org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:79)
$Proxy177.chercheUser(Unknown Source)
HitServlet.doGet(HitServlet.java:46)
javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)