Ciao,
ho iniziato ad usare hibernate in maniera molto semplice, ora si complicano un pò le cose e mi sono bloccato nell'uso dei composite id.
Il mio problema è mappare una relazione tra due tabelle che hanno come chiave due campi del db. Mi spiego meglio:
la tabella T10 ha come chiave id e cod
la tabella T10I è una tabella figlia di T10, ha come chiabe id,cod e num.
la relazione tra T10 e T10I è una relazione uno a molti con in chiave id e cod.
Fino a quando avevo in chiave solo id non avevo problemi, ma ora ho in chiave anche cod e non riesco a mapparle nel modo corretto.
codice:
 <class name="T10" table="T10">
    <composite-id mapped="false" unsaved-value="undefined">
      <key-property column="id" name="id" type="string"/>
      <key-property column="cod" name="cod" type="string"/>
    </composite-id>

... altre proprietà ...
    <set cascade="save-update" inverse="true" lazy="false" name="ob" order-by="num">
      <key not-null="true">
          <column name="id"/>
          <column name="cod"/>
      </key>
      <one-to-many class="T10I"/>
    </set>
</class>
codice:
 <class name="T10I" table="T10I">
    <composite-id mapped="false" unsaved-value="undefined">
      <key-many-to-one name="id" type="string">
        <column name="id"/>
        <column name="cod"/>
      </key-many-to-one>
      <key-property column="num" name="num" type="string"/>
      <key-property column="name" name="name" type="long"/>
    </composite-id>
 ... altre proprietà ...
 </class>
codice:
public class T10 implements Serializable{
    public Set ob;
    public void setob(Set ob)
    {
	this.ob= ob;
    }

    public Set getob()
    {
	return ob;
    }

	private String id;

	public String getid()
	{
		return id;
	}

	public void setid(String id)
	{
		this.id = id;
	}
	private String cod;

	public String getcod()
	{
		return cod;
	}
	
	public void setcod(String cod)
	{
		this.cod = cod;
	}
...altre proprietà
}
codice:
public class T10I implements Serializable{

	public T10I()
	{}

	private T10 T10;

	public T10 getT10()
	{
		return T10;
	}

	public void setT10(T10 T10)
	{
		this.T10 = T10;
	}


    private String id;

    public String getid() {return id;
}

    public void setid(String id) {this.id = id;
}

    private String cod;

    public String getcod() {return cod;
}

    public void setcod(String cod) {this.cod = cod;
}

    private String name;

    public String getname() {return name;
}

    public void setname(String name) {this.name = name;
}

    private long num;

    public long getnum() {return num;
}

    public void setnum(long num) {this.num = num;
}

}
Questi sono i java e gli xml del mapping.
Quando eseguo il progetto mi va in errore.

Inoltre volevo sapere come fare il get dall'hibernateTemplate quando faccio la query per tirare su tutto l'oggetto con il composite-id.

Grazie
Ciao