OpenJPA сохраняет поля атрибутов типа java.sql.Date,
java.sql.Time или java.sql.Timestamp, имеющих
аннотацию javax.persistence.Temporal, а EclipseLink генерирует
исключительную ситуацию.
Это правило находит следующие сочетания аннотации и атрибута, для которых не
требуется обеспечивать преобразование данных, но нужно удалить аннотацию
Temporal, чтобы избежать ошибки EclipseLink:
javax.persistence.Temporal(TemporalType.DATE) в атрибуте java.sql.Datejavax.persistence.Temporal(TemporalType.TIME) в атрибуте java.sql.Datejavax.persistence.Temporal(TemporalType.DATE) в атрибуте java.sql.Timejavax.persistence.Temporal(TemporalType.TIME) в атрибуте java.sql.Timejavax.persistence.Temporal(TemporalType.TIMESTAMP) в java.sql.Time
javax.persistence.Temporal(TemporalType.TIMESTAMP) в java.sql.TimestampattributeДля тех тех случаев, когда требуется класс преобразователя для преобразования данных из формата базы данных в объект сущности и наоборот, предусмотрено правило Заменить аннотацию Temporal на Converter в некоторых атрибутах java.sql.
В приведенном ниже примере правило отметит все вхождения аннотации @javax.persistence.Temporal.
@javax.persistence.Temporal(TemporalType.DATE) частное java.sql.Date dateDate; @javax.persistence.Temporal(TemporalType.TIME) частное java.sql.Date dateTime; @javax.persistence.Temporal(TemporalType.DATE) частное java.sql.Time timeDate; @javax.persistence.Temporal(TemporalType.TIME) частное java.sql.Time timeTime; @javax.persistence.Temporal(TemporalType.TIMESTAMP) частное java.sql.Time timeTimestamp; @javax.persistence.Temporal(TemporalType.ОТМЕТКА времени) частное java.sql.Timestamp timestampTimestamp;
Автоматическое исправление удалит аннотации Temporal.
частное java.sql.Date dateDate; частное java.sql.Date dateTime; частное java.sql.Time timeDate; частное java.sql.Time timeTime; частное java.sql.Time timeTimestamp; частное java.sql.Timestamp timestampTimestamp;
Для получения дополнительной информации об этой проблеме и других проблемах, возникающих при миграции OpenJPA в EclipseLink, обратитесь к руководству Миграция OpenJPA в EclipseLink JPA: преобразования.