Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] a Exception que mostrou para mim foi diferente da aula

Exception in thread "main" com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $ at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:397)

Quando buscamos um ID que não existe, o erro ocorre no Json. Como posso tratar essa exceção em uma nova Classe sem perder a nossa variável de busca criada com base no ID ?
2 respostas
solução!

Olá Mariane!

A exceção que você está enfrentando é uma JsonSyntaxException, que ocorre quando há um erro de sintaxe no JSON que está sendo lido. No caso específico, o erro indica que era esperado um objeto JSON (BEGIN_OBJECT), mas foi encontrado um array JSON (BEGIN_ARRAY) na linha 1, coluna 2 do JSON.

Para tratar essa exceção em uma nova classe sem perder a variável de busca criada com base no ID, você pode utilizar um bloco try-catch para capturar a exceção e tratar o erro de forma adequada. Dentro do bloco catch, você pode realizar as ações necessárias para lidar com o erro, como exibir uma mensagem de erro para o usuário ou tomar alguma outra ação apropriada.

Aqui está um exemplo de como você pode fazer isso:

try {
    // Código que faz a busca com base no ID
} catch (e: JsonSyntaxException) {
    // Tratamento da exceção
    println("Erro ao ler o JSON: ${e.message}")
    // Outras ações necessárias
}

Dentro do bloco catch, você pode adicionar o código necessário para lidar com a exceção. No exemplo acima, estamos apenas imprimindo uma mensagem de erro, mas você pode adaptar o código de acordo com a sua necessidade.

Espero ter ajudado! Bons estudos!

Olá Pessoal,

Estou enfrentando o mesmo, neste caso devo converter minha classe Jogo para uma var array que trate essas informações ?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software