Erreur de syntaxe de l'analyse d'un trivial requête avec JPA

J'ai créé l'entité bean avec netbeans assistant et essaie d'obtenir des données à partir de la base de données. N'importe quelle requête SQL puis-je l'utiliser,il ne fonctionne pas. J'ai essayé d'utiliser une requête nommée qui a été créé par l'assistant:

@NamedQuery(name = "Usr.findAll", query = "SELECT u FROM Usr u")

Il retourne:

Caused by: Exception [EclipseLink-8025] (Eclipse Persistence Services - 2.0.1.v20100213-r6600): org.eclipse.persistence.exceptions.JPQLException
Exception Description: Syntax error parsing the query [Usr.findAll], line 1, column 0: unexpected token [Usr].

Si j'essaie;

SELECT uid FROM usr;

J'obtiens:

Caused by: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing the query [SELECT uid FROM usr;], line 0, column -1: unexpected end of query.
Internal Exception: MismatchedTokenException(-1!=78)

et même si j'essaie :

SELECT * FROM usr

J'obtiens:

Caused by: Exception [EclipseLink-8025] (Eclipse Persistence Services - 2.0.1.v20100213-r6600): org.eclipse.persistence.exceptions.JPQLException
Exception Description: Syntax error parsing the query [SELECT * FROM usr], line 1, column 7: unexpected token [*].

Ma ligne pour l'obtention des données est:

@PersistenceContext
EntityManager em;
....

em=Persistence.createEntityManagerFactory("SchoolPU").createEntityManager();
List users = em.createQuery("SELECT * FROM usr").getResultList();

Un peut m'aider avec ce problème trivial?

L'Usr classe d'entité:

import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
/**
*
* @author danizmax
*/
@Entity
@Table(name = "USR")
@NamedQueries({
@NamedQuery(name = "Usr.findAll", query = "SELECT u FROM Usr u"),
@NamedQuery(name = "Usr.findByUid", query = "SELECT u FROM Usr u WHERE u.uid = :uid"),
@NamedQuery(name = "Usr.findByPassword", query = "SELECT u FROM Usr u WHERE u.password = :password"),
@NamedQuery(name = "Usr.findByFistname", query = "SELECT u FROM Usr u WHERE u.fistname = :fistname"),
@NamedQuery(name = "Usr.findByLastname", query = "SELECT u FROM Usr u WHERE u.lastname = :lastname"),
@NamedQuery(name = "Usr.findByAddress1", query = "SELECT u FROM Usr u WHERE u.address1 = :address1"),
@NamedQuery(name = "Usr.findByAddress2", query = "SELECT u FROM Usr u WHERE u.address2 = :address2"),
@NamedQuery(name = "Usr.findByPostcode", query = "SELECT u FROM Usr u WHERE u.postcode = :postcode"),
@NamedQuery(name = "Usr.findByEmail", query = "SELECT u FROM Usr u WHERE u.email = :email"),
@NamedQuery(name = "Usr.findByPhone", query = "SELECT u FROM Usr u WHERE u.phone = :phone")})
public class Usr implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "UID", nullable = false, length = 8)
private String uid;
@Basic(optional = false)
@Column(name = "PASSWORD", nullable = false, length = 20)
private String password;
@Basic(optional = false)
@Column(name = "FISTNAME", nullable = false, length = 30)
private String fistname;
@Basic(optional = false)
@Column(name = "LASTNAME", nullable = false, length = 60)
private String lastname;
@Basic(optional = false)
@Column(name = "ADDRESS1", nullable = false, length = 100)
private String address1;
@Column(name = "ADDRESS2", length = 100)
private String address2;
@Basic(optional = false)
@Lob
@Column(name = "CITY", nullable = false)
private byte[] city;
@Basic(optional = false)
@Column(name = "POSTCODE", nullable = false, length = 10)
private String postcode;
@Column(name = "EMAIL", length = 50)
private String email;
@Column(name = "PHONE")
private Integer phone;
public Usr() {
}
public Usr(String uid) {
this.uid = uid;
}
public Usr(String uid, String password, String fistname, String lastname, String address1, byte[] city, String postcode) {
this.uid = uid;
this.password = password;
this.fistname = fistname;
this.lastname = lastname;
this.address1 = address1;
this.city = city;
this.postcode = postcode;
}
public String getUid() {
return uid;
}
public void setUid(String uid) {
this.uid = uid;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getFistname() {
return fistname;
}
public void setFistname(String fistname) {
this.fistname = fistname;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
public String getAddress1() {
return address1;
}
public void setAddress1(String address1) {
this.address1 = address1;
}
public String getAddress2() {
return address2;
}
public void setAddress2(String address2) {
this.address2 = address2;
}
public byte[] getCity() {
return city;
}
public void setCity(byte[] city) {
this.city = city;
}
public String getPostcode() {
return postcode;
}
public void setPostcode(String postcode) {
this.postcode = postcode;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Integer getPhone() {
return phone;
}
public void setPhone(Integer phone) {
this.phone = phone;
}
@Override
public int hashCode() {
int hash = 0;
hash += (uid != null ? uid.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 Usr)) {
return false;
}
Usr other = (Usr) object;
if ((this.uid == null && other.uid != null) || (this.uid != null && !this.uid.equals(other.uid))) {
return false;
}
return true;
}
@Override
public String toString() {
return "org.danizmax.Usr[uid=" + uid + "]";
}
}

persistance.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.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_2_0.xsd">
<persistence-unit name="SchoolPU" transaction-type="JTA">
<jta-data-source>jdbc/school</jta-data-source>
<properties>
</properties>
</persistence-unit>
</persistence>

La classe où j'utilise l'entité:

import java.util.Iterator;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.Persistence;
import javax.persistence.PersistenceContext;
/**
*
* @author danizmax
*/
@Stateless
public class ValidatorBean {
@PersistenceContext
EntityManager em;
public ValidatorBean() {
}
public boolean validate(String user, String pass) {
List users = em.createQuery("SELECT * FROM usr").getResultList();
Iterator it = users.iterator();
//ignore the stupid validation it's only to try out JPA
while(it.hasNext()){
Usr u = (Usr) it.next();
if(u.getUid().equals(user) && u.getPassword().equals(pass)){
return true;
}
}
return false;
}
}

Mise à JOUR: être juste pour vous les gars qui ont répondu et la récompense de vos efforts, maintenant que j'ai réellement appris la technologie et de l'utiliser dans le monde réel, j'ai décidé de fermer cette réponse avec l'attribution de la meilleure réponse qui a été mon plus probable solution que j'ai trouvé mon auto il y a longtemps.

J'ai trouvé une solution, mais ne me souviens plus exactement ce que c'était, mais seulement qu'il avait quelque chose à voir avec la coulée dans le code. Si je comprendre exactement ce que c'était, je vais poster une réponse.

OriginalL'auteur danizmax | 2011-02-13