https://www.caelum.com.br/mobile
Está fora do ar?
Oi Marcus, tudo bom?
Essa URL realmente está retornando 500. Vou repassar isso pra equipe e te retornamos aqui.
Obrigado pelo feedback =)
OK obrigado, Falta só esse módulo para finalizar este curso.
Abs
Oi Marcus, dei uma verificada aqui com a equipe eles testaram e o webservice está funcionando.
O problema é que dependendo de como você fizer a requisição ele retorna 500. Você poderia compartilhar com a gente seu código? Assim a gente pode te ajudar melhor =)
Aguardo retorno.
Eu rodei aqui aquela consulta das médias e a Webservice está funcionando normalmente. Realmente se houver algum erro na hora de passar a requisição post ou no json obtemos um erro no próprio Toast. Posta o código caso não consiga.
Oi André, segue o código:
public class EnviaAlunosTask extends AsyncTask {
private Context context;
private ProgressDialog dialog;
public EnviaAlunosTask(Context context) {
this.context = context;
}
@Override
protected void onPreExecute() {
//super.onPreExecute();
dialog = ProgressDialog.show(context,"Aguarde","Enviando alunos", true, true);
}
@Override
protected Object doInBackground(Object[] params) {
AlunoDAO dao = new AlunoDAO(context);
List<Aluno> alunos = dao.buscaAlunos();
dao.close();
AlunoConverter conversor = new AlunoConverter();
String json = conversor.converteParaJson(alunos);
WebClient client = new WebClient();
String resposta = client.post(json);
//resposta = json;
//Toast.makeText(context, resposta, Toast.LENGTH_SHORT).show();
return resposta;
}
@Override
protected void onPostExecute(Object o) {
//super.onPostExecute(o);
Toast.makeText(context, (String) o, Toast.LENGTH_LONG).show();
dialog.dismiss();
}
}
Oi Marcus, eu dei uma editada no seu código para facilitar a leitura, ao enviar código aqui no fórum clique em <>INSERIR CÓDIGO e põe ele entre o espaço indicado pra ele aparecer legível como acima, senão fica só um monte de texto tudo junto.
Bom vamos lá, tentando te ajudar gostaria que você postasse aqui de antemão a sua classe AlunoConverter e também a stacktrace de Erro que você tá recebendo ao tentar acessar o Webservice.
Passei essa string para testar se o json estava errado:
String json = "{\"List\":[{\"aluno\":[{\"id\":\"1\",\"nome\":\"1\",\"endereco\":\"1\",\"telefone\":\"1\",\"site\":\"1\",\"nota\":\"10\"},{\"id\":\"1\",\"nome\":\"1\",\"endereco\":\"1\",\"telefone\":\"1\",\"site\":\"1\",\"nota\":\"7\"}]}]}";
Hum E qual foi o resultado ? Oi Marcus acredito que a questão esteja na sua classe AlunoConverter, posta ela aí, pra verificarmos.
Ola, desculpe a demora!!!
package br.com.m1web.agenda.converter;
import org.json.JSONException; import org.json.JSONStringer;
import java.util.List;
import br.com.m1web.agenda.modelo.Aluno;
/* Created by MarcusVinicius on 04/01/2017. */
public class AlunoConverter {
public String converteParaJson(List<Aluno> alunos) {
JSONStringer js = new JSONStringer();
try {
js.object().key("List").array().object().key("aluno").array();
for (Aluno aluno : alunos) {
js.object();
js.key("nome").value(aluno.getNome());
js.key("nota").value(aluno.getNota());
js.endObject();
}
js.endArray().endObject().endArray().endObject();
} catch (JSONException e) {
e.printStackTrace();
}
return js.toString();
}
}
Bom dia Marcus, altere a chave de List para list. Depois dê CTRL + F9 (Make Project) e Reinicie a aplicação no emulador e nos informe.
Oi Maison, era isso mesmo!!!!
Obrigado pela ajuda!!!!!!!!!!
ABs