Chcę wysłać obiekt DTO do kontrolera, który zawiera m.in. Map<Long, MultipartFile>.
public class ContributionNew<T extends MovieInfoDTO> {
private List<T> elementsToAdd;
private Map<Long, T> elementsToUpdate;
private Set<Long> idsToDelete;
private Set<String> sources;
private String comment;
}
public class Photo extends MovieInfoDTO {
private MultipartFile photo;
}
@PostMapping(value = "/{id}/contributions/photos")
@ResponseStatus(HttpStatus.CREATED)
public
ResponseEntity<Void> createPhotoContribution(
@ApiParam(value = "The movie ID", required = true)
@PathVariable("id") final Long id,
@ApiParam(value = "The contribution", required = true)
@RequestBody @Valid final ContributionNew<Photo> contribution
) {
Jednak nie wiem jak tą mapę przesłać. Nie mogę wysłać danych za pomocą JSON, bo do kontroler przesyłam również pliki. Próbuję coś w ten sposób https://zapodaj.net/8ffe5d4962a13.png.html, ale nie wiem jak przesłać tą mapę w elementsToUpdate. Wydaje mi się, że również źle przeysłam plik za pomocą listy elementsToAdd. Lista elementsToAdd zawiera obiekt Photo, która posiada pole typu MultipartFile, a ja za pomocą Postmana przesyłam od razy plik do tej listy.