Problem mit dem ID-Format als UUID-String in Spring Boot mit MongoDb
Posted: 11 Jan 2025, 12:39
Ich habe ein Beispiel für Spring Boot mit MongoDb erstellt. Ich habe ein Problem damit, eine Entität anhand der ID mit Validierung abzurufen, während sie „auslöst“".
Hier ist die unten gezeigte Entität
Wenn ich getAirportById(@PathVariable @Valid @UUID final String id) vom Controller wie localhost:8080/api/v1/airports/6781972fa25a3e577395c444 aufrufe, wird das unten gezeigte Problem angezeigt
Hier ist der in der Sammlung gespeicherte Wert
Wie kann ich das Problem beheben?
Code: Select all
must be a valid UUID
Hier ist die unten gezeigte Entität
Code: Select all
@Getter
@Setter
@SuperBuilder
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
@AllArgsConstructor
@Document(collection = "airport-collection")
public class AirportEntity extends BaseEntity {
@Id
@Indexed(unique = true)
@Field(name = "_id")
private String id = UUID.randomUUID().toString();
@Field(name = "AIRPORT_NAME")
private String name;
@Field(name = "CITY_NAME")
private String cityName;
}
Code: Select all
{
"time": "2025-01-11T00:55:27.5670908",
"httpStatus": "BAD_REQUEST",
"header": "VALIDATION ERROR",
"message": "Constraint violation",
"isSuccess": false,
"subErrors": [
{
"message": "must be a valid UUID",
"field": "id",
"value": "6781972fa25a3e577395c444",
"type": "String"
}
]
}
Code: Select all
_id : ObjectId(6781972fa25a3e577395c444)
AIRPORT_NAME : String
CITY_NAME : String
_class : Entity clas