Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro Para enviar o idCliente

O meu código não esta enviando o idCliente para a Oagina Web.

Segue a conf da Class Aluno

package br.com.alura.agenda.modelo;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.io.Serializable;

public class Aluno implements Serializable {

    @JsonProperty("idCliente")
    private Long id;
    private String nome;
    private String endereco;
    private String telefone;
    private String site;
    private Double nota;
    private String caminhoFoto;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getEndereco() {
        return endereco;
    }

    public void setEndereco(String endereco) {
        this.endereco = endereco;
    }

    public String getTelefone() {
        return telefone;
    }

    public void setTelefone(String telefone) {
        this.telefone = telefone;
    }

    public String getSite() {
        return site;
    }

    public void setSite(String site) {
        this.site = site;
    }

    public Double getNota() {
        return nota;
    }

    public void setNota(Double nota) {
        this.nota = nota;
    }

    public String getCaminhoFoto() {
        return caminhoFoto;
    }

    public void setCaminhoFoto(String caminhoFoto) {
        this.caminhoFoto = caminhoFoto;
    }

    @Override
    public String toString() {
        return getId() + " - " + getNome();
    }
}

segue interface .

package br.com.alura.agenda.services;


import br.com.alura.agenda.modelo.Aluno;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.POST;

public interface AlunoService {

    @POST("aluno")
    Call<Void> insere(@Body Aluno aluno);
}

retrofit inicializador

package br.com.alura.agenda.retrofit;


import br.com.alura.agenda.services.AlunoService;
import retrofit2.Retrofit;
import retrofit2.converter.jackson.JacksonConverterFactory;

public class Retrofitinicializador {

    private final Retrofit retrofit;

    public  Retrofitinicializador(){
        retrofit = new Retrofit.Builder().baseUrl("http://192.168.25.22:8080/api/")
                .addConverterFactory(JacksonConverterFactory.create()).build();

    }

    public AlunoService getAlunoService() {


        return retrofit.create(AlunoService.class);
    }
}

Call

Call call = new Retrofitinicializador().getAlunoService().insere(aluno);
                call.enqueue(new Callback() {
                    @Override
                    public void onResponse(Call call, Response response) {
                        Log.i("onResponse", "Requisição com Sucesso");
                    }

                    @Override
                    public void onFailure(Call call, Throwable t) {
                        Log.e("onFailure", "Requisição Falhou");
                    }
                });
1 resposta
solução!

Oi Dionísio, tudo bem?

Recomendo que você dê uma olhada na sobre UUID, pois nela é explicado alguns dos detalhes que acontecem nessa implementação de envio de aluno para o servidor.

Dando um spoiler, essa implementação de envio de id numérico tem alguns pontos problemáticos, portanto, nessa aula que passei resolvemos esses detalhes :)

Caso ficar com dúvida na aula posterior é só avisar.

Abraços.