First the modal of team Update where Team is an entity in my spring mvc application Then The controller method and the updateTeam method implementation:
Here is the code:
<div class="modal fade" id="update-team-modal_${t.id}" tabindex="-1"
role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5>Modification Equipe</h5>
</div>
<div class="modal-body">
<form enctype="multipart/form-data" method="POST"
action="updateTeam" onsubmit="return validateTeamUpdate();">
<div class="form-group">
<input id="id" type="hidden" name="id" class="form-control"
value="${t.id}">
</div>
<div class="form-group">
<label for="name">Nom </label><span class="req">*</span>
<div class="input-group">
<input type="text" name="name" id="name"
class="form-control-large" value="${t.name }" autocomplete="off"
required="required" />
</div>
</div>
<div class="form-group">
<label for="color">Couleur</label><span class="req">*</span> <input
type="text" id="color" name="color" class="form-control demo"
style="width: 200px;"
data-swatches="#fff|#000|#f00|#0f0|#00f|#ff0|#0ff"
required="required" value="${t.color }">
</div>
<div class="form-group">
<label for="validateur">Validateur</label> <span class="req">*
</span> <select class="form-control-small" id="validateur"
name="validateur" required="required">
<option value="${t.validateur.matricule}">${t.validateur.firstName
} ${t.validateur.lastName }</option>
<c:forEach var="u" items="${users}">
<option value="${u.matricule}">${u.firstName}
${u.lastName}</option>
</c:forEach>
</select>
</div>
<div class="modal-footer">
<button class="btn btn-ok" type="submit"
style="background-color: #C6172E; color: white;">
<i class="glyphicon glyphicon-ok"></i>Editer
</button>
<button class="btn"
style="background-color: #5A6B80; color: white;"
data-dismiss="modal" onclick="this.form.reset();">
<i class="glyphicon glyphicon-remove"></i>Annuler
</button>
</div>
</form>
</div>
</div>
</div>
</div>
@RequestMapping(value = "/updateTeam", method = RequestMethod.POST)
public ModelAndView updateTeam(@RequestParam("id") long id,
@RequestParam("name") String name,
@RequestParam("validateur") String validateur,@RequestParam("color")String color) {
Team team = teamService.getById(id);
User validant = null;
if (!validateur.equals("null"))
validant = userService.getByMatricule(validateur);
team.setName(name);
team.setColor(color);
team.setValidateur(validant);
teamService.updateTeam(team);
return new ModelAndView(new RedirectView("gestionEquipes"));
}
@Override
public void updateTeam(Team t) {
teamRepository.saveAndFlush(t);
}
Bad Request 400 Etat HTTP 400 - Required String parameter 'color' is not present in spring mvc controller? La requête envoyée par le client était syntaxiquement incorrecte.
Can someone give me an idea how to solve this problem?