I want to send an object to the controller that has several lists with files and several fields with plain text.
public class ContributionNew
As said dknight @RequestBody means use of JSON or XML data with maps your DTO bean. In case of MultipartFile you can't use JSON data so you can't use @RequestBody. Try with @ModelAttribute annotation.
Working sample :
@PostMapping("/promoters")
@Timed
public ResponseEntity createPromoter(@ModelAttribute PromoterDTO promoterDTO) throws URISyntaxException { ... }
With PromoterDTO like this :
public class PromoterDTO implements Serializable {
private Long id;
private String name;
private String address;
private MultipartFile logo;
}