O OpenJPA persiste os campos dos atributos do tipo java.sql.Date, java.sql.Time, ou java.sql.Timestamp que possuem uma anotaçãojavax.persistence.Temporal, enquanto o EclipseLink lança uma exceção.
Esta regra faz a varredura para procurar as combinações de anotação-atributo a seguir nas quais os dados não precisam ser convertidos e a anotação Temporal deve ser removida para evitar um erro EclipseLink:
javax.persistence.Temporal(TemporalType.DATE) em um
atributo java.sql.Datejavax.persistence.Temporal(TemporalType.TIME)
em um atributo java.sql.Datejavax.persistence.Temporal(TemporalType.DATE)
em um atributo java.sql.Timejavax.persistence.Temporal(TemporalType.TIME)
em um atributo java.sql.Timejavax.persistence.Temporal(TemporalType.TIMESTAMP)
em um atributo java.sql.Time
javax.persistence.Temporal(TemporalType.TIMESTAMP)
em um atributo java.sql.TimestampPara casos nos quais uma classe conversora é necessária para alterar os dados entre o banco de dados e o objeto de entidade, consulte a regra Substituir anotação Temporal com um Conversor para alguns atributos java.sql.
No exemplo a seguir, esta regra sinaliza a anotação @javax.persistence.Temporal em todos os casos.
@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) privado java.sql.Time timeDate; @javax.persistence.Temporal(TemporalType.TIME) private java.sql.Time timeTime; @javax.persistence.Temporal(TemporalType.TIMESTAMP) privado java.sql.Time timeTimestamp; @javax.persistence.Temporal(TemporalType.TIMESTAMP) private java.sql.Timestamp timestampTimestamp;
Uma correção automatizada removerá as anotações temporais.
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;
Para obter informações sobre esse problema e outros problemas de migração do OpenJPA para o EclipseLink, consulte o guia Migração do OpenJPA para o EclipseLink JPA: mapeamentos.