Ola, Estou criando uma API para cadastro de cliente seguindo as aulas... Tem dado tudo certo. Quando chegou no PUT, apesar de dar status 200, atualiza todos os parâmetros para null! Alguém me ajuda a entender o pq?
ClienteController
@PutMapping("/{id}")
@Transactional
public ResponseEntity<ClienteDto> atualizar(@PathVariable Long id, @RequestBody @Valid AtualizacaoClienteForm form) {
Cliente cliente = form.atualizar(id, clienteRepository);
return ResponseEntity.ok(new ClienteDto(cliente));
}
AtualizacaoClienteForm:
public class AtualizacaoClienteForm {
private String telefone;
@Email
private String email;
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
//busca tópicos pelo id do BD e atualizar informações que foram modificadas
public Cliente atualizar(Long id, ClienteRepository clienteRepository) {
Cliente cliente = clienteRepository.getReferenceById(id);
cliente.setTelefone(this.telefone);
cliente.setEmail(this.email);
return cliente;
}
}
Copiei apenas esses trechos pois como dito tudo antes estava funcionando...