Verwenden Sie java.time.Instant, um DateTime anstelle von OffsetDateTime darzustellenJava

Java-Forum
Guest
 Verwenden Sie java.time.Instant, um DateTime anstelle von OffsetDateTime darzustellen

Post by Guest »

Ich verwende das openApi-Maven-Plugin, um Java-Anfragen/Antworten für eine REST-API zu generieren.

Die Anfrage hat eine DateTime-Eigenschaft, wenn ich den Generator I ausführe Rufen Sie die DateTime-Eigenschaft des Attributs ab, das als java.time.OffsetDateTime dargestellt wird. Das Problem besteht darin, dass ich die Eigenschaft als java.time.Instant darstellen muss.

Dies ist die openApi-Spezifikation für die Anfrage:

Code: Select all

"DocumentDto" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"format" : "uuid"
},
"creationDate" : {
"type" : "string",
"format" : "date-time"
}
}
}
Die generierte Java-Anfrage:

Code: Select all

@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2019-05-21T13:07:21.639+02:00[Europe/Zurich]")
public class DocumentDto {
public static final String SERIALIZED_NAME_UUID = "uuid";
@SerializedName(SERIALIZED_NAME_UUID)
private UUID uuid;

public static final String SERIALIZED_NAME_TEST = "creationDate";
@SerializedName(SERIALIZED_NAME_TEST)
private OffsetDateTime creationDate;
}
Das Maven-Plugin-Setup:

Code: Select all

org.openapitools
openapi-generator-maven-plugin
3.3.4


test-service
validate

generate



${project.build.directory}/open-api/swagger.json

java
false
false
com.test
test-service
test.model
test.api

src/gen/java/main
java8
true





Ich habe die typeMappings und importMappings bereits wie folgt ausprobiert, aber es hatte keine Auswirkungen auf den generierten Code:

Code: Select all

DateTime=Instant
Instant=java.time.Instant

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post