A mensagem de erro no Insomnia:
“Text ‘2018-08-01’ could not be parsed at index 2”
Mensagem de erro que aparece no console da IDE, quando a requisição é feita (pode ser qualquer uma, get, delete, post e put):
WARNe[0;39m e[35m3008e[0;39m e[2m—e[0;39m e[2m[nio-8080-exec-1]e[0;39m e[36m.m.m.a.ExceptionHandlerExceptionResolvere[0;39m e[2m:e[0;39m Resolved [org.modelmapper.MappingException: ModelMapper mapping errors:1) Error mapping com.higormorais.model.entities.Divida to com.higormorais.dto.DividaDTO1 error]
O código do projeto: https://github.com/HigalLegal/cadastroDeDividas
Me parece ser um erro envolvendo a classe DividaDTO. Mas o que é, exatamente, eu não sei.
Acredito que problema esteja nessa parte:
DividaDTO
public void setData(String data) {
this.data = LocalDate.parse(data, DateTimeFormatter.ofPattern("dd/MM/yyyy"));
}
Pode ser que a data
recebida como parâmetro esteja num formato diferente, ex: 2018-08-01
.
Reparei que vc tem umas camadas meio que desnecessárias no seu projeto. O fluxo que vi foi:
- DividaRepository: Que devolve uma entidade
Divida
- DividaService: Que devolde uma
DividaDTO
- DividaDTO: Que é convertida para um
DividaResponse
- DividaResponse: Que é devolvida na requisição
- DividaController: Apenas o endpoint
Me parece bem desnecessário ter esses dois: DividaDTO
e DividaResponse
, pois, aparentemente, vc poderia usar somente 1 sem ter prejuizo no seu projeto. Sem falar que vc está usando uma lib para fazer a conversão de um para outro, o que faz vc depender de um negócio externo e não ter o total controle dessas conversões.
E não vejo muito sentido sua classe service devolver um DTO. Seria melhor devolver a entidade e deixar para quem for usar o serviço decidir o que fazer com a entidade retornada.