Hi! i have this type oh hierarchy:
Imbarcazione is father, and ImbarcazioneGommone, ImbarcazionePanfilo and ImbarcazioneVela are her sons.
I must create an QBE to find an object but the query doesn't return me an object.
This is the code of query
Code:
public List<Imbarcazione> ricercaImbarcazione(String cf, String cn, String n)
{
SessionFactory factory = HibernateUtil.getSessionFactory();
Session sessione = factory.openSession();
Imbarcazione a = new Imbarcazione();
List<Imbarcazione> l = new ArrayList<Imbarcazione>();
a.setId(cf);
a.setCodiceNavale(cn);
a.setNome(n);
System.out.println(a.getNome());
Criteria criteria = sessione.createCriteria(Imbarcazione.class);
Example e = Example.create(a).excludeZeroes();
criteria.add(e);
criteria.add(Restrictions.eq("class", ImbarcazioneGommone.class));
criteria.add(Restrictions.eq("class", ImbarcazionePanfilo.class));
criteria.add(Restrictions.eq("class", ImbarcazioneVela.class));
l = criteria.list();
System.out.println("SIZE "+criteria.list().size());
sessione.close();
factory.close();
return l;
}
and this is the class Imbarcazione
Code:
public class Imbarcazione implements Serializable
{
private String id;
private String codiceNavale;
private String nome;
private int lunghezza;
private int larghezza;
private String codiceRadio;
private int portataMassima;
private boolean equipaggio;
private Socio socio;
private Locazione locazione;
private Set manutenzioni = new HashSet();
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public void addManutenzione(Manutenzioni manutenzione)
{
manutenzioni.add(manutenzione);
}
public Set getManutenzioni() {
return manutenzioni;
}
public void setManutenzioni(Set manutenzioni) {
this.manutenzioni = manutenzioni;
}
public Locazione getLocazione() {
return locazione;
}
public void setLocazione(Locazione locazione) {
this.locazione = locazione;
}
public Socio getSocio() {
return socio;
}
public void setSocio(Socio socio) {
this.socio = socio;
}
public String getCodiceNavale() {
return codiceNavale;
}
public void setCodiceNavale(String codiceNavale) {
this.codiceNavale = codiceNavale;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getLunghezza() {
return lunghezza;
}
public void setLunghezza(int lunghezza) {
this.lunghezza = lunghezza;
}
public int getLarghezza() {
return larghezza;
}
public void setLarghezza(int larghezza) {
this.larghezza = larghezza;
}
public String getCodiceRadio() {
return codiceRadio;
}
public void setCodiceRadio(String codiceRadio) {
this.codiceRadio = codiceRadio;
}
public int getPortataMassima() {
return portataMassima;
}
public void setPortataMassima(int portataMassima) {
this.portataMassima = portataMassima;
}
public boolean isEquipaggio() {
return equipaggio;
}
public void setEquipaggio(boolean equipaggio) {
this.equipaggio = equipaggio;
}
}
Helm me please! I don't know where is the problem