-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Done
-
Affects Version/s: EAP 5.0.0, 4.2.0.GA_CP08, 4.3.0.GA_CP07, EAP 5.0.1
-
Fix Version/s: 4.2.0.GA_CP09, 4.3.0.GA_CP08, EAP_EWP 5.1.0
-
Component/s: Hibernate
-
Labels:None
-
Affects:Release Notes
-
Workaround:Workaround Exists
-
Workaround Description:
see http://opensource.atlassian.com/projects/hibernate/browse/HHH-4825
this issue also exist in annotations, see JBPAPP-3560
Following mapping fails:
<hibernate-mapping default-access="property" package="case419703">
<class abstract="false" dynamic-insert="true" dynamic-update="true" name="TestB"
table="TEST_B">
<composite-id class="case419703.key.FrameworkKeyCustID"
name="frameworkKey">
<key-property column="NR_RZBK" name="frameworkCustId"/>
<key-property column="TXT_OID" name="frameworkOid"/>
</composite-id>
<version column="NR_VERSION" name="frameworkVersion"/>
<set cascade="persist, merge, save-update" inverse="true" lazy="true" name="testC">
<key>
<column name="NR_RZBK"/>
<column name="TXT_OID_TESTB"/>
</key>
<one-to-many class="TestC"/>
</set>
</class>
<class abstract="true" dynamic-insert="true" dynamic-update="true" name="AbstractTestC"
table="notable">
<composite-id class="case419703.key.FrameworkKeyCustID"
name="frameworkKey">
<key-property column="NR_RZBK" name="frameworkCustId"/>
<key-property column="TXT_OID" name="frameworkOid"/>
</composite-id>
<version column="NR_VERSION" name="frameworkVersion"/>
<union-subclass dynamic-insert="true" dynamic-update="true" name="case419703.TestC"
table="TEST_C">
<property column="PID" name="pid" update="false"/>
<property column="TXT_OID_TESTB" name="fkReverseTestB"/>
<many-to-one cascade="persist, merge, save-update" class="case419703.TestB"
fetch="select" insert="false" lazy="no-proxy" name="reverseTestB"
update="false" >
<column name="NR_RZBK" />
<column name="TXT_OID_TESTB" />
<!-- formula>'TXT_OID_TESTB'</formula-->
</many-to-one>
</union-subclass>
</class>
</hibernate-mapping>
however changing to
<many-to-one cascade="persist, merge, save-update" class="case419703.TestB"
fetch="select" insert="false" lazy="no-proxy" name="reverseTestB"
update="false" >
<column name="NR_RZBK" />
<column name="TXT_OID_TESTB" />
<!-- formula>'TXT_OID_TESTB'</formula-->
</many-to-one>
<property column="PID" name="pid" update="false"/>
<property column="TXT_OID_TESTB" name="fkReverseTestB"/>
works.
Something is wrong with th algo.
See attached testcase.
- is duplicated by
-
JBPAPP-3560 Bug when using @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) + @AttributeOverride
-
- Closed
-