Ciao,
I guess your mapping is not right. You say that "ext_srl_no" is an auto incremented column but in the same time is a foreign key. If you map tab1 then you can only reference columns from that table. So if on tab1 you have a column that references a foreign key then it cannot be auto incremented.
I think your classes and mappings should look something like this:
Tab2 class:
Code:
public class Tab2
{
private int id;
private string description;
public virtual int IdTab2
{
set{id=value;}
get{return id;}
}
public virtual string Description
{
set{description=value;}
get{return description;}
}
}
Tab2 mapping:Code:
<hibernate-mapping mapping-2.2">
<class name="Tab2" table="Tab2" lazy="true">
<id name="IdTab2" type="System.Int16" column="IdTab2" unsaved-value="0">
<generator class="native" />
</id>
<property name="Description" type="System.String" column="Description" not-null="true" length="50" />
</class>
</hibernate-mapping>
Tab1 class:Code:
public class Tab1
{
private int id;
private Tab2 referencedObject;
public virtual int IdTab1
{
set{id=value;}
get{return id;}
}
public virtual Tab2 Tab2ReferencedObject
{
set{referencedObject=value;}
get{return referencedObject;}
}
}
Tab1 mapping:Code:
<hibernate-mapping mapping-2.2">
<class name="Tab1" table="Tab1" lazy="true">
<id name="IdTab1" type="System.Int16" column="IdTab1" unsaved-value="0">
<generator class="native" />
</id>
<many-to-one name="Tab2ReferencedObject" class="Tab2">
<column name="ColumnNameFromTab1ReferencingTab2"/>
</many-to-one>
</class>
</hibernate-mapping>
The "ColumnNameFromTab1ReferencingTab2" column should not be auto-incremented.
I hope this helps. Good luck!