Hi Leute
Ich entwickle eine Java Applikation mit Tomcat 5.0.28, Struts, JSP, MSSQL Server und Hibernate 2.1.7c.
<br>
Es gibt eine Klasse Project und eine Klasse ExtendedProject mit einer @hibernate.one-to-one Beziehung zu Project in Form eines Attributs private Project project.
Auszug aus ExtendedProject.hbm.xml (Attribut project):
<one-to-one
name="project"
class="com.seeburger.bilbo.vo.Project"
cascade="none"
outer-join="auto"
constrained="false"
/>
<br>
Ich habe Probleme mit folgender Hibernatequery:
String query = "select p from ExtendedProject as p, ProjectUserAssignment as pua where pua.user = ? and pua.project = p.project and p.project.status = ? ";
<br>
Alternative Möglichkeit:
String query = "select ep from ExtendedProject as ep, Project as p, ProjectUserAssignment as pua where pua.user = ? and pua.project = p and p.status = ? and ep.project = p";
<br>
Die Funktion dao.query fügt in die Fragezeichen die angegebenen Parameter user vom Typ user und Project.STATUS_ACTIVE vom typ String ein (das funktioniert):
projects = dao.query(query, new Object[]{user, Project.STATUS_ACTIVE});
<br>
Beide Möglichkeiten der Query verursachen eine Exception und ich habe keine Ahnung warum.
<br>
So sah die query mit dem alten Objekttyp Project anstatt ExtendedProject aus und so hat sie auch funktioniert:
String query = "select p from Project as p, ProjectUserAssignment as pua where pua.user = ? and pua.project = p and p.status = ? ";
<br>
Ich vermute daher, dass Hibernate Probleme mit der one-to one Beziehung hat. Woran kann das liegen?
Ich entwickle eine Java Applikation mit Tomcat 5.0.28, Struts, JSP, MSSQL Server und Hibernate 2.1.7c.
<br>
Es gibt eine Klasse Project und eine Klasse ExtendedProject mit einer @hibernate.one-to-one Beziehung zu Project in Form eines Attributs private Project project.
Auszug aus ExtendedProject.hbm.xml (Attribut project):
<one-to-one
name="project"
class="com.seeburger.bilbo.vo.Project"
cascade="none"
outer-join="auto"
constrained="false"
/>
<br>
Ich habe Probleme mit folgender Hibernatequery:
String query = "select p from ExtendedProject as p, ProjectUserAssignment as pua where pua.user = ? and pua.project = p.project and p.project.status = ? ";
<br>
Alternative Möglichkeit:
String query = "select ep from ExtendedProject as ep, Project as p, ProjectUserAssignment as pua where pua.user = ? and pua.project = p and p.status = ? and ep.project = p";
<br>
Die Funktion dao.query fügt in die Fragezeichen die angegebenen Parameter user vom Typ user und Project.STATUS_ACTIVE vom typ String ein (das funktioniert):
projects = dao.query(query, new Object[]{user, Project.STATUS_ACTIVE});
<br>
Beide Möglichkeiten der Query verursachen eine Exception und ich habe keine Ahnung warum.
<br>
So sah die query mit dem alten Objekttyp Project anstatt ExtendedProject aus und so hat sie auch funktioniert:
String query = "select p from Project as p, ProjectUserAssignment as pua where pua.user = ? and pua.project = p and p.status = ? ";
<br>
Ich vermute daher, dass Hibernate Probleme mit der one-to one Beziehung hat. Woran kann das liegen?
Comment