[hibernate-issues] [Hibernate-JIRA] Created: (METAGEN-66) XML Based Mapping of Embeddets in Mapped-Superclass is ignored

Ralph Engelmann (JIRA) noreply at atlassian.com
Wed Jun 22 07:11:53 EDT 2011


XML Based Mapping of Embeddets in Mapped-Superclass is ignored
--------------------------------------------------------------

                 Key: METAGEN-66
                 URL: http://opensource.atlassian.com/projects/hibernate/browse/METAGEN-66
             Project: Hibernate Metamodel Generator
          Issue Type: Bug
    Affects Versions: 1.1.1.Final
         Environment: Meta model generator for Hibernate (Version 1.1.1-Final), Hiberante 3.6.1.Final, Spring 3.0
            Reporter: Ralph Engelmann
            Assignee: Hardy Ferentschik


I use a Mapped Superclass, which refer to an (generic) Embeddded.
Because this class is located in an different jar I needto map this class explicit in XML.
But the Hibernate Model Generator does not create an field in the Meta Model of the Mapped Superclass that represent the Embedded.

See the code for illustration.

{code:title=Mapped Superclass(BusinessEntity<T>)}
public abstract class BusinessEntity<T extends Serializable>
                      implements Serializable {
   private Long id;

   private BusinessId<T> businessId;
 ...
}
{code}

{code:title=Generic Embedded (BusinessId<T>)}
public class BusinessId<T> implements Serializable {

    private long businessId;
  ...
}
{code}

{code:title=orm.xml}
<?xml version="1.0" encoding="UTF-8"?>
<entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm
    http://java.sun.com/xml/ns/persistence/orm_2_0.xsd"
    version="2.0">

    <mapped-superclass class="BusinessEntity"  
            access="FIELD">     
        <attributes>            
            <id name="id">
                <column nullable="false"/>
                <generated-value strategy="AUTO"/>              
            </id>
            <embedded name="businessId"/>
        </attributes>       
    </mapped-superclass>

    <embeddable class="BusinessId"
            access="FIELD">
        <attributes>
            <basic name="businessId">
                <column nullable="false" unique="true"/>
            </basic>
        </attributes>
    </embeddable>   
</entity-mappings>
{code}

{code:title=Generated Meta Model (BusinessEntity_)}
import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel;

@StaticMetamodel(BusinessEntity.class)
public abstract class BusinessEntity_ {
	public static volatile SingularAttribute<BusinessEntity, Long> id;
}
{code}

{code:title=Generated Meta Model (BusinessId_)}
import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel;

@StaticMetamodel(BusinessId.class)
public abstract class BusinessId_ {
	public static volatile SingularAttribute<BusinessId, Long> businessId;
}
{code}



-- 
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