Was könnte das Problem sein?"Benannte Abfrage nicht bekannt" für benannte Hibernate-Abfrage?
@Entity
@NamedQueries({
@NamedQuery(name = User.ALL,
query = "SELECT u FROM User u")
})
public class User {
public static final String ALL = "User.all";
}
public class Service {
find... with ... User.ALL
}
Stacktrace:
Caused by: org.hibernate.MappingException: Named query not known: User.all
at org.hibernate.impl.AbstractSessionImpl.getNamedQuery(AbstractSessionImpl.java:93)
at org.hibernate.impl.SessionImpl.getNamedQuery(SessionImpl.java:1407)
at $Session_a5ad46cfa25.getNamedQuery(Unknown Source)
at $Session_a5ad46cf913.getNamedQuery(Unknown Source)
at de.medicshare.dal.HibernateCrudServiceDAO.findUniqueWithNamedQuery(HibernateCrudServiceDAO.java:83)
at $CrudServiceDAO_a5ad46cfa19.findUniqueWithNamedQuery(Unknown Source)
at $CrudServiceDAO_a5ad46cfa1b.findUniqueWithNamedQuery(Unknown Source)
at $CrudServiceDAO_a5ad46cf931.findUniqueWithNamedQuery(Unknown Source)
at de.medicshare.pages.Signup.proceedSignup(Signup.java:82)
at de.medicshare.pages.Signup.dispatchComponentEvent(Signup.java)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:923)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1106)
... 90 more
, warum Sie nicht einfach Name = "User.all"? – Nurlan
Eclipse kann nur die Verwendung von Konstanten bestätigen. Also, wenn ich die Abfrage mit "User.all" erstellen, ist es eine Zeichenfolge, die nicht überprüft wird. Die Verwendung von 'User.ALL' wird vor dem Kompilieren überprüft, wenn ich es falsch buchstabiere. – membersound
Können Sie Ihre hibernate.cfg.xml/persistence.xml posten? –