Távolítsa el a Temporal annotációt bizonyos java.sql attribútumokból

Az OpenJPA tárolja a javax.persistence.Temporal annotációval ellátott java.sql.Date, java.sql.Time vagy java.sql.Timestamp típusú attribútumok mezőit, míg ez EclipseLink egy kivételt dob.

Ez a szabály megkeresi a következő annotáció-attribútum kombinációkat, ahol az adatokat nem kell átalakítani, és a a Temporal annotációt el kell távolítani egy EclipseLink hiba elkerülése érdekében:

Az olyan esetekben, ahol egy átalakító osztály szükséges az adatbázis és az egyedobjektum közötti adatmódosításhoz, tekintse meg a Temporal annotáció lecserélése egy átalakítóra néhány java.sql attribútum esetén szabályt.

A következő példában ez a szabály minden esetben megjelöli a @javax.persistence.Temporal annotációt.

   @javax.persistence.Temporal(TemporalType.DATE)
   private java.sql.Date dateDate;
   
   @javax.persistence.Temporal(TemporalType.TIME)
   private java.sql.Date dateTime;
   
   @javax.persistence.Temporal(TemporalType.DATE)
   private java.sql.Time timeDate;
   
   @javax.persistence.Temporal(TemporalType.TIME)
   private java.sql.Time timeTime;
   
   @javax.persistence.Temporal(TemporalType.TIMESTAMP)
   private java.sql.Time timeTimestamp;
   
   @javax.persistence.Temporal(TemporalType.TIMESTAMP)
   private java.sql.Timestamp timestampTimestamp;

A szabályhoz tartozó gyorsjavítás eltávolítja a Temporal annotációkat.

   private java.sql.Date dateDate;
   
   private java.sql.Date dateTime;
   
   private java.sql.Time timeDate;
   
   private java.sql.Time timeTime;
   
   private java.sql.Time timeTimestamp;
   
   private java.sql.Timestamp timestampTimestamp;

A problémával és más OpenJPA - EclipseLink átállítási problémákkal kapcsolatos információkért tekintse meg az OpenJPA - EclipseLink JPA átállítás: Leképezések útmutatót.