tcube,
I am having a very similiar problem even after following the examples in the docs.
I notice in your code, you have a <set ...> inside your <join..>. If you look at the 3.0 dtd, you can't put <set> within a <join>.
See:
http://hibernate.sourceforge.net/hibern ... ng-3.0.dtd
Are you using the 3.0 dtd in your mapping files? You don't show the top lines of your mapping file in the code you posted so I can't tell.
I hope that helps...if you got past this or have anymore insights, please reply. I am still having problems regardless of where I put my <property> and <set>. I have tried both under <subclass> and <join> but XMLHelper complains, even though the DTD says I can do what I am doing:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<subclass name="MySubClass"
discriminator-value="CLASS1"
extends="MySuperClass">
<join table="MY_SUB_TABLE">
<key column="ID"/>
</join>
<property name="col1" type="long">
<column name="col1" not-null="true" />
</property>
<set name="details"
table="DETAIL"
cascade="all"
lazy="true"
inverse="true">
<key column="MY_SUBCLASS_ID"/>
<one-to-many class="Detail"/>
</set>
</subclass>
</hibernate-mapping>
Error parsing XML: XML InputStream(37) The content of element type "subclass" must match "(meta*,synchronize*,(property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|idbag|array|primitive-array|query-list)*,join*,subclass*,loader?,sql-insert?,sql-delete?,sql-update?)".
Thx,
Eric