Exception beim Erstellen einer Query

markai

Aktives Mitglied
Würde gerne den Benutzern meiner Webanwendung ermöglichen meine Datenbank zu durchsuchen. Dazu habe ich (zum Testen) folgendes gemacht:
Java:
@ManagedBean(name = "recipeController")
@SessionScoped
public class RecipeController implements Serializable {
        ...
        public String find(){
        List results = getFacade().getEntityManager().createQuery("select * from recipe").getResultList();
        System.out.println(results.size());
        return null;
        }

Jedoch bekomme ich folgende Exception.
Java:
WARNING: #{recipeController.find}: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing the query [select * from recipe;], line 1, column 7: unexpected token [*].
Internal Exception: NoViableAltException(93@[330:16: ( DISTINCT )?])
javax.faces.FacesException: #{recipeController.find}: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing the query [select * from recipe;], line 1, column 7: unexpected token [*].
Internal Exception: NoViableAltException(93@[330:16: ( DISTINCT )?])
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

Führe ich die query direkt auf meiner db aus liefert sie ergebnisse. Was mache ich jetzt schon wieder falsch? ;(
 

diel2001

Bekanntes Mitglied
Versuch mal das hier :
Java:
List results = getFacade().getEntityManager().createQuery("select r.* from recipe r").getResultList();
Und wenn das nicht geht, debugge mit eclipse und führe den Befehl in dem Display
 

markai

Aktives Mitglied
Java:
List results = getFacade().getEntityManager().createQuery("select r.* from recipe r").getResultList();

bringt mir das:

Java:
WARNING: #{recipeController.find}: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing the query [select r.* from recipe r], line 1, column 9: unexpected token [*].
Internal Exception: org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierException
javax.faces.FacesException: #{recipeController.find}: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing the query [select r.* from recipe r], line 1, column 9: unexpected token [*].
Internal Exception: org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierException
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
        ...
 

diel2001

Bekanntes Mitglied
Schau nochmal in der Datenbank nach, wie der Name der Tabelle ist.
Und versuch mal statt "*" einfach mal ein einzelnes Feld zu laden.
 

diel2001

Bekanntes Mitglied
2.Versuch
Java:
List results = getFacade().getEntityManager().createQuery("select r from recipe r").getResultList();
 

markai

Aktives Mitglied
hab ich auch schon versucht...

Java:
List results = getFacade().getEntityManager().createQuery("select r from recipe r").getResultList();

liefert mir...
Java:
WARNING: #{recipeController.find}: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Error compiling the query [select r from recipe r]. Unknown entity type [recipe].
javax.faces.FacesException: #{recipeController.find}: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Error compiling the query [select r from recipe r]. Unknown entity type [recipe].
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
 

diel2001

Bekanntes Mitglied
Gibt es denn die Klasse "Recipe" ?
Ist die Klasse als Entity markiert per Annotation ?

Poste mal die Klasse Recipe und dann schauen wir mal.
 

markai

Aktives Mitglied
Sollt so stimmen oder?

Java:
@Entity
public class Recipe implements Serializable, Comparable<Recipe> {
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    @Column(nullable=false) @NotBlank
    private String name;
    @Column(nullable=false) @Lob @NotBlank
    private String description;
    ...

    // getter u setter
 

diel2001

Bekanntes Mitglied
3.Versuch
Java:
List results = getFacade().getEntityManager().createQuery("select r from Recipe r").getResultList();
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
R JSF Exception Web Tier 2
D Sessiontimeout Exception bei Weiterleitung Web Tier 10
C Tomcat + Eclipselink = NotSerializable Exception? Web Tier 2
D JSF EL #{not null bean.property} Parse exception Web Tier 2
O Connection Pool: "Timeout waiting for idle object" Exception Web Tier 3
L JSF: Property not found Exception Web Tier 2
M JSP & Hibernate Exception Web Tier 3
S Arrayliste bei nullprüfung, nullpointer Exception... Web Tier 2
A GWT & MYSQL - Exception while dispatching incoming RPC call Web Tier 3
L Grundlegende Fragen zum Exception-Handling Web Tier 8
R Exception? Was für ein Fehler? Web Tier 3
W RichFaces converter in orderingList wirft exception Web Tier 5
A Duplicate Id Exception JSF Web Tier 2
A Servlet Exception - missing } Web Tier 19
Y JSF - Exception bei Tomcat Start Web Tier 4
H facestrace - null pointer exception Web Tier 3
pkm Problem beim Import eines dynamischen Webprojekts als .zip Web Tier 2
Rudolf Glassfish stoppen beim Start ALLE Applikationen zu deployen Web Tier 3
T JSF Primefaces beim öffnen eines p:dialog wird eine neue View ManagedBean erstellt Web Tier 2
M JSP Problem beim deployen auf Tomcat Web Tier 2
H JSP Class not found beim Applet-Start Web Tier 4
S JSF Probleme beim redirect im ExceptionHandler Web Tier 2
B JSP Warning [unchecked] beim Build von JSP Web Tier 5
D Probleme beim installieren von WebBeans Web Tier 2
H Probleme beim Aufrufen von Java- oder Servlet-Methoden aus Javascript Web Tier 2
I Beim zurück-Link wird immer ein Request ausgeführt Web Tier 5
K [GWT] Probleme beim asynchronen Methodenaufruf mit GWT-RPC Web Tier 8
Spin JSP Fehler beim casten , why? Web Tier 6
R Fehler 1053 beim Beenden von Tomcat Web Tier 25
A Tomcat: beim Start des Servers einmalige Aktion aufrufen (Problem gelöst) Web Tier 2
F Fehler beim erstellen des EJB - Moduls! Web Tier 4
F Beim Aufruf von einer JSF Seite eine Methode ausführen Web Tier 9
J dynamische jsf-seite programmatisch erstellen Web Tier 1
FINF_AW_Alex JSF Nochmal ACL -+- Neue Entity aus anderen Entitys erstellen Web Tier 16
E Wie kann ich dynamische HTML- Tabellen(-spalten) mit JSP aus SELECT-Anweisung erstellen? Web Tier 2
J JSF-Komponente, in der man ein Klassen-Diagram erstellen kann Web Tier 0
G jsf bean erstellen die mir die aktuelle uhrzeit ausgibt als xhtml Web Tier 5
H Bean-Objekte aus XML erstellen Web Tier 2
D JSF Converter erstellen Web Tier 2
H JSPs programmatisch erstellen Web Tier 11
L in JSF ein download button erstellen Web Tier 4
I Menü erstellen: h:panelGrid rendern in Abhängigkeit von CommandLink Web Tier 2
L Unter JSP eine XML Datei erstellen Web Tier 3
2 ActionForm erstellen? Web Tier 3
H Vorgehensweise: Bilder anzeigen/erstellen in JSP/Servlet ? Web Tier 3
G jsf session erstellen Web Tier 10
N JSF-Tabelle erstellen aus Datenbank mittels JDBC Web Tier 12

Ähnliche Java Themen

Neue Themen


Oben