Однако у меня возникают проблемы с созданием нового членства после того, как участник нажимает кнопку «Присоединиться» в joinProject. html-страница. Я постоянно получаю следующее сообщение об ошибке:
(type=Bad Request, status=400).
Failed to convert value of type 'java.lang.String' to required type 'java.lang.Long'; nested exception is java.lang.NumberFormatException: For input string: "saveMembership"
Цель — добавить вошедшего в систему участника в проект. Новое членство можно увидеть в списке на странице projectDetails.html.
Я использую Spring Boot, Thymeleaf и JPA. У меня такое чувство, что это что-то очень простое и глупое, но я просто не могу найти проблему.

Если вам нужно увидеть больше кода или информации, я буду рад предоставить.
Спасибо. для вашего времени!
Вот класс MembershipCreatorObject, который я пытаюсь использовать для получения необходимых данных в свой контроллер:
public class MembershipCreatorObject {
private String id;
private String username;
private String jobDescription;
public MembershipCreatorObject() {
super();
}
public MembershipCreatorObject(String id, String username, String jobDescription) {
super();
this.id = id;
this.username = username;
this.jobDescription = jobDescription;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getJobDescription() {
return jobDescription;
}
public void setJobDescription(String jobDescription) {
this.jobDescription = jobDescription;
}
Вот мой контроллер:
@RequestMapping(value= {"/joinProject/{projectId}"})
public String joinProject(@PathVariable("projectId") Long urlId, Model model) {
model.addAttribute("mObject", new MembershipCreatorObject());
model.addAttribute("project", projectRepo.findByProjectId(urlId));
return "joinProject";
}
@RequestMapping(value="/saveMembership", method=RequestMethod.POST)
public String saveMembership(MembershipCreatorObject mObject) {
String id = mObject.getId();
Long idConverted = Long.parseLong(id);
String username = mObject.getUsername();
String description = mObject.getJobDescription();
Project projectToAdd = projectRepo.findByProjectId(idConverted);
Member memberToAdd = memberRepo.findByUsername(username);
Membership membershipToAdd = new Membership(description, memberToAdd, projectToAdd);
membershipRepo.save(membershipToAdd);
return "redirect:/projectCatalog";
}
Вот файл joinProject -html.
Join Project
Logged in as: [[${#httpServletRequest.remoteUser}]]
What will you be working on?
Подробнее здесь: https://stackoverflow.com/questions/556 ... -to-requir