Hallo, ich hab angefangen mich mit JPA, mit Stateless-EJB zu beschäftigen.
Nun hab ich ein für mich nicht nachvollziehbares Problem:
Klasse1:
Klasse2:
In der em.createNamedQuery(Projekt.FIND_BY_NAME, Projekt.class);
wird der zweite "NamedQuery" aufgerufen, dann werden Parameter gesetzt.
Und in der letzten Zeile habe ich ne Exception:
Ich verstehe nicht warum, wenn ich das doch mit der Annotation "@Column" deklariert habe.
Kann mir da jemand weiterhelfen, vllt?
Danke im Voraus
Nun hab ich ein für mich nicht nachvollziehbares Problem:
Klasse1:
@Entity
@NamedQueries(
{
@NamedQuery(name= Projekt.FIND_ALL, query = "select p from Projekt p order by p.mintposition"),
@NamedQuery(name = Projekt.FIND_BY_NAME, query = "select p from Projekt p where p.mstrName = :strname")
}
)
public class Projekt implements Serializable
{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(name="Projektbezeichnung", unique=true)
private String mstrName;
@Column(name="ProjektPosition", unique=true)
private int mintposition;
Klasse2:
@Stateless
public class ProjektService {
@PersistenceContext(unitName = "OnlineProjektPU")
private EntityManager em;
public void persistProjekt(Object object) {
em.persist(object);
}
public Projekt findProjekt(String strname) throws Exception {
List<Projekt> lstResutlList = null;
try {
TypedQuery<Projekt> createNamedQuery = em.createNamedQuery(Projekt.FIND_BY_NAME, Projekt.class);
createNamedQuery.setParameter("strname", strname);
createNamedQuery.getResultList();
In der em.createNamedQuery(Projekt.FIND_BY_NAME, Projekt.class);
wird der zweite "NamedQuery" aufgerufen, dann werden Parameter gesetzt.
Und in der letzten Zeile habe ich ne Exception:
java.sql.SQLSyntaxErrorException: Die Spalte 'PROJEKTPOSITION' ist in keiner Tabelle der FROM-Liste enthalten,
Ich verstehe nicht warum, wenn ich das doch mit der Annotation "@Column" deklariert habe.
Kann mir da jemand weiterhelfen, vllt?
Danke im Voraus