Try setting not-null="false" for those values in your table which are not required by the database. I can't remember offhand whether it defaults to true or false, but we always set ours, one way or another.
If that doesn't help, please post the code where you are trying to update. It should be something like this:
Also, if you have a Dye class, and Dye.id = die_id in DyeCirculation class, then
you should have a foreign key mapping in your DyeCirculation.hbm.xml, or the database will not save/update/cascade in the way you intend. Also, you will not be using Hibernate to the extent of its performance-enhancing abilities.
Also, try looking here
Hibernate Mapping Cheat Sheet
or here
Hibernate Common Problems FAQ