Greetings all,
I am using OpenJPA v1.2.1 with the following class and the SQL that is
created uses an INNER JOIN for the join between the PERSON and LINEAGE
tables. How can I make that an OUTER JOIN?
Earnie!
@Entity
@EPenEntity(listNamedQueryName = "Person.people")
@Table(name = "PERSON")
@NamedQueries({
@NamedQuery(name = "Person.people", query = "SELECT p FROM Person p
ORDER BY p.me DESC, p.lastName, p.firstName, p.middleName,
p.lineage.description"),
@NamedQuery(name = "Person.findMe", query = "SELECT p FROM Person p
WHERE p.me = true")
})
public class Person implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column(name = "ME", nullable = false)
private Boolean me = false;
@Column(name = "DATEOFBIRTH")
@Temporal(TemporalType.DATE)
private Date dateOfBirth;
@Column(name = "GENDER", length = 6)
private String gender;
@Column(name = "FIRSTNAME", length = 50)
private String firstName;
@Column(name = "MIDDLENAME", length = 50)
private String middleName;
@Column(name = "LASTNAME", length = 50)
private String lastName;
@ManyToOne(fetch =
FetchType.EAGER,cascade={CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH})
@JoinColumn(name = "LINEAGEID")
private Lineage lineage;
@ManyToOne(fetch =
FetchType.EAGER,cascade={CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH})
@JoinColumn(name = "TITLEID")
private Title title;
@OneToMany(fetch =
FetchType.EAGER,cascade={CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH})
@JoinTable(name = "PERSONADDRESS", joinColumns =
@JoinColumn(name =
"PERSONID"),inversejoincolum...@joincolumn(name="ADDRESSID"))
private Collection<PersonAddress> addresses = new
ArrayList<PersonAddress>(0);
@OneToMany(fetch =
FetchType.EAGER,cascade={CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH})
@JoinTable(name = "PERSONPHONENUMBER", joinColumns =
@JoinColumn(name =
"PERSONID"),inversejoincolum...@joincolumn(name="PHONENUMBERID"))
private Collection<PersonPhoneNumber> phoneNumbers = new
ArrayList<PersonPhoneNumber>(0).....
...other stuff not shown
--
View this message in context:
http://n2.nabble.com/Inner-Join-tp2733679p2733679.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.