i'm fairly new to Java and the Spring Framework and this might be easy to solve but I cant find any solutions to this problem and other solutions don't fit my problem.
I want to implement a dynamic form, where the user inserts multiple Email addresses to send invitations. This form can dynamically be extended by JS. Every click adds another input field to my form. So now I have a variable amount of values I want to send to my Spring Backend. I was thinking that I have to use @ResponseBody and a Map to store the POST values in it and then iterate over it and (for example) copy them into an ArrayList or directly use my EmailService to send out an Email.
The problem is, Spring gives me an error:
Resolved exception caused by Handler execution: org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported
This is my HTML
<form method="post" id="send-invite-mail" th:action="@{/sendmail/sendInvitations}">
<div id="formfields">
<div class="form-group">
<input type="email" class="form-control" id="email1" name="email1" placeholder="Enter Email-Address ..."/>
</div>
</div>
<!-- more form-groups are added here by JS -->
<button type="submit" id="submitInvitation" class="btn btn-primary">Invite</button>
</form>
And this is what I use in the backend to get my values
@PostMapping("/sendmail/sendInvitations")
public void getInvitationList (@RequestBody Map<String, String> formData){
List<String> adressList = new ArrayList<String>();
for (Map.Entry<String, String> entry : formData.entrySet()) {
adressList.add(entry.getValue());
}
}
Right now I have no idea if I'm doing this correct or not. Appreciate any help.