[hibernate-issues] [Hibernate-JIRA] Commented: (HBX-524) Reverse of one-to-one relationships
Alexander Buttau (JIRA)
noreply at atlassian.com
Thu Jul 31 10:58:51 EDT 2008
[ http://opensource.atlassian.com/projects/hibernate/browse/HBX-524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_30767 ]
Alexander Buttau commented on HBX-524:
--------------------------------------
Hi Marcio,
thanks for your code it works ...
... and to teach Hibernate-Tools to generate a one-to-one mapping you must
create a new template "one-to-one.hbm.tpl", which is similat to "many-to-one.hbm.ftl" and looks like this:
<one-to-one
name="${property.name}"
class="${c2j.getJavaTypeName(property, false)}"
<#if !property.updateable>
update="false"
</#if>
<#if !property.insertable>
insert="false"
</#if>
<#if !property.basicPropertyAccessor>
access="${property.propertyAccessorName}"
</#if>
<#if property.cascade != "none">
cascade="${property.cascade}"
</#if>
<#assign fetchmode = c2h.getFetchMode(property)>
<#if fetchmode != "default">
fetch="${fetchmode}"
</#if>
<#if !property.optimisticLocked>
optimistic-lock="false"
</#if>
<#if property.value.hasFormula()>
<#assign formula = c2h.getFormulaForProperty(property)>
<#if formula>
formula="${formula.text}"
</#if>
</#if>
>
</one-to-one>
> Reverse of one-to-one relationships
> -----------------------------------
>
> Key: HBX-524
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HBX-524
> Project: Hibernate Tools
> Issue Type: Bug
> Components: reverse-engineer
> Affects Versions: 3.1beta2
> Environment: HIbernate 3.1, Oracle 9i
> Reporter: Andrea Cattani
>
> Hi,
> I've posted this issue to the forum and got this response from Max, Hibernate Team:
> "the reveng tools does not detect this as a one-to-one. it probably could, so add a request/patch to jira."
> The problem I've faced is the following:
> I have two tables, let's say
> - table A with column ID (PK) and other fields
> - table B with column ID (PK) and other fields
> table B has a foreign key constraint against table A, from column ID to column ID (one-to-one)
> When I reverese the tables with the HibernateTools I have such a resultant mapping for table B:
> <class name="B" table="B" schema="SCHEMA">
> <id name="id" type="string">
> <column name="ID" length="12" />
> <generator class="assigned" />
> </id>
> <[b]many-to-one name[/b]="a" class="A" update="false" insert="false" fetch="select">
> <column name="ID" length="12" not-null="true" unique="true" />
> </many-to-one>
> ....
> And this one for table A:
> <class name="A" table="A" schema="SCHEMA">
> <id name="id" type="string">
> <column name="ID" length="12" />
> <generator class="assigned"/>
> </id>
> <set name="b" inverse="true">
> <key>
> <column name="ID" length="12" not-null="true" unique="true" />
> </key>
> <[b]one-to-many[/b] class="B" />
> </set>
> </class>
> while I was expecting something like:
> [i]<one-to-one name="a" class="A" constrained="true"/>[/i]
> in table B, and the same (or nothing) in table A
> Thank you
> Andi
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list