[ 
https://issues.apache.org/jira/browse/OPENJPA-2782?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Huang yun updated OPENJPA-2782:
-------------------------------
    Description: 
My entities like this:

@MappedSuperclass
 *public abstract class* A *implements* Serializable

{ @Id@Column(name = *"Uid"*, nullable = *false*, updatable = *false*, length = 
36)*private* String uid = *""*; }

@Entity
 @Inheritance(strategy = InheritanceType.JOINED)

*public abstract class* B *extends* A

{     //     //…… }
 
 @Entity
 @Inheritance(strategy = InheritanceType.SINGLE_TABLE)

*public abstract class* C *extends* B \{     //     //…… }

@Entity
 *public class* C1 *extends* C

{     //     //…… }
 
 @Entity
 *public class* C2 *extends* C \{     //     //…… }

@Entity
 *public class* C3 *extends* C

{     //     //…… }

 
| |Expected results|Actual result|Ecliselink result|
|Table A|Not create|yes|yes|
|Table B|Auto create|yes|yes|
|Table C|Auto create|no|yes|
|Table C1|Not create|yes|yes|
|Table C2|Not create|yes|yes|
|Table C3|Not create|yes|yes|

 

The Actual result is Table C is not created, and the columns in C, C1, C2, C3 
all to Table B.

  was:
My entities like this:

@MappedSuperclass
 *public abstract class* A *implements* Serializable {

@Id@Column(name = *"Uid"*, nullable = *false*, updatable = *false*, length = 
36)*private* String uid = *""*;

}

@Entity
 @Inheritance(strategy = InheritanceType.JOINED)*public abstract class* B 
*extends* A {     //     //……

}

@Entity
 @Inheritance(strategy = InheritanceType.SINGLE_TABLE)*public abstract class* C 
*extends* B {     //     //……

}

@Entity
 *public class* C1 *extends* C {     //     //……

}

@Entity
 *public class* C2 *extends* C {     //     //……

}

@Entity
 *public class* C3 *extends* C {     //     //……

}

 
| |Expected results|Actual result|Ecliselink result|
|Table A|Not create|yes|yes|
|Table B|Auto create|yes|yes|
|Table C|Auto create|no|yes|
|Table C1|Not create|yes|yes |
|Table C2|Not create|yes|yes|
|Table C3|Not create|yes|yes |

 

The Actual result is Table C is not created, and the columns in C, C1, C2, C3 
all to Table B.


> about mix use Inheritance strategy auto create table problem
> ------------------------------------------------------------
>
>                 Key: OPENJPA-2782
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-2782
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: jdbc
>    Affects Versions: 3.0.0
>            Reporter: Huang yun
>            Priority: Major
>
> My entities like this:
> @MappedSuperclass
>  *public abstract class* A *implements* Serializable
> { @Id@Column(name = *"Uid"*, nullable = *false*, updatable = *false*, length 
> = 36)*private* String uid = *""*; }
> @Entity
>  @Inheritance(strategy = InheritanceType.JOINED)
> *public abstract class* B *extends* A
> {     //     //…… }
>  
>  @Entity
>  @Inheritance(strategy = InheritanceType.SINGLE_TABLE)
> *public abstract class* C *extends* B \{     //     //…… }
> @Entity
>  *public class* C1 *extends* C
> {     //     //…… }
>  
>  @Entity
>  *public class* C2 *extends* C \{     //     //…… }
> @Entity
>  *public class* C3 *extends* C
> {     //     //…… }
>  
> | |Expected results|Actual result|Ecliselink result|
> |Table A|Not create|yes|yes|
> |Table B|Auto create|yes|yes|
> |Table C|Auto create|no|yes|
> |Table C1|Not create|yes|yes|
> |Table C2|Not create|yes|yes|
> |Table C3|Not create|yes|yes|
>  
> The Actual result is Table C is not created, and the columns in C, C1, C2, C3 
> all to Table B.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to