Ich habe recherchiert und ich kann keine Antwort für diesen finden, obwohl es viele ähnliche Antworten gibt.Fehler beim automatischen Registrieren von Typen im Spring Boot (JPA/Joda/Jadira)
Ich habe eine Spring Boot-Anwendung (1.3.3.RELEASE
), die Spring Data JPA und Joda Time verwendet; Ich benutze auch YAML für Konfigurationszwecke.
Das Problem ist: Ich kann es nicht schaffen, Benutzertypen mit Jadira automatisch zu registrieren.
mein Dies ist die relevante Stück application.yml
Datei:
jackson:
joda-date-time-format: yyyy-MM-dd'T'HH:mm:ss.SSSZ
serialization:
write_dates_as_timestamps: false
jpa:
properties:
#jadira_usertype_autoRegisterUserTypes: true
jadira:
usertype:
autoRegisterUserTypes: true
... und dies ist einer der JPA-Entitäten:
@Entity
@Table(name = "POSTULATIONS")
public final class PostulationEntity implements Serializable {
private static final long serialVersionUID = 608398264869292985L;
@Id
@JsonProperty("id_postulation")
@Column(name = "ID_POSTULATION") // columnDefinition = "BINARY(16)"
@GeneratedValue(generator = "uuid2")
@GenericGenerator(name = "uuid2", strategy = "uuid2")
private String id;
@NotNull
@JsonProperty("issued_at")
@Column(name = "ISSUED_AT", nullable = false)
//@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
private DateTime issuedAt;
@OneToOne
@PrimaryKeyJoinColumn
private PersonEntity person;
Ich möchte DateTime
Typen verwenden können, ohne Angabe die @Type
.
Ich habe mehrere Ansätze versucht, aber es funktioniert nicht so weit, wenn ich nicht die @Type
Annotation auf jedem DateTime
Feld setzen.
Schließlich ist dies die relevante Stück für meine Gradle Konfiguration:
dependencies {
compile 'com.google.guava:guava:19.0'
//compile 'org.jadira.usertype:usertype.core:5.0.0.GA' // TODO: ?
compile 'org.jadira.usertype:usertype.jodatime:2.0.1' // TODO
compile 'com.fasterxml.jackson.datatype:jackson-datatype-joda' // TODO
}
Vielen Dank im Voraus ...
Sie Verwenden Sie Spring-Boot, so sieht es aus wie Ihr Projekt ist ziemlich neu. Wenn Sie nicht bereits daran gedacht haben, von joda-time zu java8 datetimes zu wechseln, würde ich vorschlagen, das zu prüfen. –