I'm having a similar problem to
this post. although the component approach does not seem to work.
I have two classes: PropertyReportOrder and PropertyReport. They have a bidirectional one-to-one relationship, and both must be mapped to the property_report table.
If I map one as a component, then it doesn't seem that I would be able to access the other one directly, which I will need to be able to do. At some times, users will want to start with a PropertyReport and see its PropertyReportOrder, and at other times they will need to start with the order and then get to the report.
I thought about doing separate class/component mappings for BOTH classes, but it seems a little weird. Also, that solution breaks for PropertyReport because it needs to have mapped subclasses, and <component> does not allow <joined-subclass> nodes. (and that's another problem -- described in
this posting.)
So far the only thing I can get to work is to use <many-to-one> mappings between the two classes.