Yes, I did read that section of the documentation (several times :-) and I guess I still am confused. If it helps, are the relevant mapping files.
Please let me know if you something suspicious.
Also please can you tell me in general if there are circumstances where saveOrUpdate() gives an error where save() doesn't?
Thanks
Pito
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>
<class
name="de.nava.informa.impl.hibernate.ChannelGroup"
table="CHANNEL_GROUPS"
dynamic-update="false"
dynamic-insert="false"
>
<id
name="intId"
column="CHANNEL_GROUP_ID"
type="integer"
>
<generator class="native">
</generator>
</id>
<property
name="title"
type="java.lang.String"
update="true"
insert="true"
column="TITLE"
not-null="true"
/>
<bag
name="channels"
lazy="true"
inverse="false"
cascade="none"
order-by="CHANNEL_GROUP"
>
<key
column="CHANNEL_GROUP"
/>
<one-to-many
class="de.nava.informa.impl.hibernate.Channel"
/>
</bag>
<many-to-one
name="parent"
class="de.nava.informa.impl.hibernate.ChannelGroup"
cascade="none"
outer-join="auto"
update="true"
insert="true"
column="PARENT_ID"
/>
<bag
name="children"
lazy="true"
inverse="false"
cascade="none"
order-by="CHANNEL_GROUP_ID"
>
<key
column="PARENT_ID"
/>
<one-to-many
class="de.nava.informa.impl.hibernate.ChannelGroup"
/>
</bag>
<!--
To add non XDoclet property mappings, create a file named
hibernate-properties-ChannelGroup.xml
containing the additional properties and place it in your merge dir.
-->
</class>
</hibernate-mapping>
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>
<class
name="de.nava.informa.impl.hibernate.Item"
table="ITEMS"
dynamic-update="false"
dynamic-insert="false"
>
<id
name="intId"
column="ITEM_ID"
type="integer"
>
<generator class="native">
</generator>
</id>
<many-to-one
name="channel"
class="de.nava.informa.impl.hibernate.Channel"
cascade="none"
outer-join="auto"
update="true"
insert="true"
column="CHANNEL_ID"
not-null="true"
/>
<property
name="title"
type="java.lang.String"
update="true"
insert="true"
column="TITLE"
not-null="true"
/>
<property
name="description"
type="java.lang.String"
update="true"
insert="true"
column="DESCRIPTION"
/>
<property
name="link"
type="java.net.URL"
update="true"
insert="true"
column="LINK"
/>
<bag
name="categories"
table="CAT_ITEM_LINK"
lazy="true"
inverse="false"
cascade="none"
>
<key
column="ITEM_ID"
/>
<many-to-many
class="de.nava.informa.impl.hibernate.Category"
column="CATEGORY_ID"
outer-join="auto"
/>
</bag>
<property
name="creator"
type="java.lang.String"
update="true"
insert="true"
column="CREATOR"
/>
<property
name="subject"
type="java.lang.String"
update="true"
insert="true"
column="SUBJECT"
/>
<property
name="date"
type="java.util.Date"
update="true"
insert="true"
column="DATE"
/>
<property
name="found"
type="java.util.Date"
update="true"
insert="true"
column="FOUND"
/>
<many-to-one
name="guid"
class="de.nava.informa.impl.hibernate.ItemGuid"
cascade="none"
outer-join="auto"
update="true"
insert="true"
column="GUID"
/>
<property
name="comments"
type="java.net.URL"
update="true"
insert="true"
column="COMMENTS"
/>
<many-to-one
name="source"
class="de.nava.informa.impl.hibernate.ItemSource"
cascade="none"
outer-join="auto"
update="true"
insert="true"
column="SOURCE"
/>
<many-to-one
name="enclosure"
class="de.nava.informa.impl.hibernate.ItemEnclosure"
cascade="none"
outer-join="auto"
update="true"
insert="true"
column="ENCLOSURE"
/>
<!--
To add non XDoclet property mappings, create a file named
hibernate-properties-Item.xml
containing the additional properties and place it in your merge dir.
-->
</class>
</hibernate-mapping>
[/code]