2012-07-26 67 views
0

在我的申請,我有這樣的層次:表每個子類對戰重複列

  • LastUser
  • LastUserUpdatedTimestamp

的BaseObject是@MappedSuperclass,這是由事務,擴展其在轉由SubTransaction擴展。

事務對象被定義爲這樣:

@Entity 
@Table(name = "T_TRANSACTION") 
@Inheritance(strategy = InheritanceType.JOINED) 
public class Transaction extends BaseObject implements Serializable { 
    //etc 
} 

子事務看起來像這樣:

// Primary key join columns 
public class SubTransaction extends Transaction implements Serializable { 

事務和子事務被映射到表,每個具有審計列(是的,相同的名稱)

  • LastUser
  • LastUpdatedTimestamp

當我嘗試堅持一個SubTransaction時,引發一個關於事務的審計列爲空的異常。

任何人都可以提供任何建議嗎?

回答

0

據我所知,你有一個像

BaseObjectTable 
/    \ 
\/    \/ 
Transaction  Subtransaction 

一個tablestructure但映射表明他

BaseObjectTable 
/
\/ 
Transaction 
/
\/ 
Subtransaction 

率先實現,你可以嘗試設置@Extends(BaseObject)在子事務