レトロフィット-java.lang.IllegalStateException:BEGIN_ARRAYが必要でしたが、BEGIN_OBJECTでした

オレオ

私は自分のJSONを解析しようとしていますが、取得JSONSyntaxExceptionすると、JSONは次のようになります

{
    "type":"success",
    "value":[
        {
            "id":1,
            "title":"Title - 1",
         "name":{
            "first":"First - 1",
            "last":"Last - 1"
         },
            "hobbies":[
                "Writing Code - 1",
            "Listening Music - 1"
            ]
        },
       .....
    ]
}

ログによると:

E/app.retrofit_chucknorries.MainActivity$2: ERROR: com.google.gson.JsonSyntaxException: 
java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT 
at line 7 column 12 path $.value[0].name
01-21 12:41:52.156 28936-28936/app.retrofit_chucknorries 
W/System.err: retrofit.RetrofitError: com.google.gson.JsonSyntaxException: 
java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT 
at line 7 column 12 path $.value[0].name

私が行っているところではmistake ?requirement and classes他のコードとほぼ同じように、いくつかの小さな変更を加えました。Value.java:

import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

import java.util.ArrayList;
import java.util.List;

public class Value {

    @SerializedName("id")
    @Expose
    private Integer id;

    @SerializedName("title")
    @Expose
    private String title;

    @SerializedName("hobbies")
    @Expose
    private List<String> hobbies = new ArrayList<String>();

    @SerializedName("name")
    @Expose
    private List<Name> name = new ArrayList<Name>();

    public Integer getId() {
        return id;
    }

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

    public List<Name> getName() {
        return name;
    }

    public void setName(List<Name> name) {
        this.name = name;
    }

    public List<String> getHobbies() {
        return hobbies;
    }

    public void setHobbies(List<String> hobbies) {
        this.hobbies = hobbies;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }
}
ジエ

Master.javaクラスでは、名前は配列ではありません。

private List<Name> name = new ArrayList<Name>();

代わりにこれに変更して、次のことを試してください。

 private Name name;

実際には、例外のログを見ると、これを知ることができます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Androidのレトロフィット:java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、行1、列2のパスでBEGIN_OBJECTでした

分類Dev

java.lang.IllegalStateException:BEGIN_ARRAYが必要でしたが、パスでBEGIN_OBJECTでした

分類Dev

java.lang.IllegalStateException:BEGIN_ARRAYが必要でしたが、BEGIN_OBJECT -ANDROIDRETROFIT2でした

分類Dev

java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、1行2列目がBEGIN_OBJECTでした

分類Dev

java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、BEGIN_OBJECT Androidエラーでした

分類Dev

java.lang.IllegalStateException:BEGIN_ARRAYが必要でしたが、BEGIN_OBJECTRetrofitでした

分類Dev

致命的な例外:java.lang.RuntimeException-java.lang.IllegalStateExceptionが原因で発生します。BEGIN_ARRAYが必要ですが、BEGIN_OBJECTでした

分類Dev

GSONを使用したJson解析:JsonSyntaxException:java.lang.IllegalStateException:BEGIN_OBJECTが必要ですが、行1、列2のパス$でBEGIN_ARRAYでした

分類Dev

java.lang.IllegalStateException:BEGIN_OBJECTが必要ですが、BEGIN_ARRAYKotlinでした

分類Dev

java.lang.illegalstateException:BEGIN_OBJECTが必要ですが、BEGIN_ARRAYRetrofitでした

分類Dev

java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、行1、列2のパスでBEGIN_OBJECTでした$ -Retrofit 2 Android kotlin

分類Dev

com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、1行目101パスでBEGIN_OBJECTでした

分類Dev

Map <String、String>をPOJOのリストに変換します-java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、STRINGでした

分類Dev

Java gsonエラー:BEGIN_OBJECTが必要ですが、BEGIN_ARRAYでした(ただし、タイプマップは正しいですか?)

分類Dev

com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:文字列が必要でしたが、BEGIN_OBJECTでした

分類Dev

Google Gson-com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:文字列が必要でしたが、BEGIN_OBJECTでした

分類Dev

GsonでJSON(ストリームモード)を解析するJAVAエラー:BEGIN_ARRAYが必要ですが、行1列2パス$でBEGIN_OBJECTでした

分類Dev

JSONエラー「java.lang.IllegalStateException:BEGIN_OBJECTが必要ですが、1行1列1パス$でSTRINGでした」

分類Dev

レトロフィットはBEGIN_OBJECTが必要でしたが、BEGIN_ARRAYでした

分類Dev

BEGIN_ARRAYが必要でしたが、レトロフィット付きのBEGIN_OBJECTでした

分類Dev

Android-レトロフィット例外BEGIN_OBJECTが必要でしたが、BEGIN_ARRAYでした

分類Dev

GSON & ボレー => BEGIN_ARRAY が必要でしたが、行 1 列 2 パス $ で BEGIN_OBJECT でした

分類Dev

Java:BEGIN_OBJECTが必要ですが、行1、列2のパス$でBEGIN_ARRAYでした

分類Dev

GSONは「BEGIN_OBJECTが必要ですがBEGIN_ARRAYでした」をスローしますか?

分類Dev

JSON エラー: 原因: java.lang.IllegalStateException: BEGIN_OBJECT が予期されていましたが、行 1 列 1 パス $ で STRING でした

分類Dev

期待されるBEGIN_ARRAYを取得しましたが、Android(java)でRetrofitを使用してjsonをフェッチしようとすると、1行2列のパス$でBEGIN_OBJECTになりました。

分類Dev

レトロフィットはBEGIN_ARRAYを想定していましたが、onActivityResultの行1列2パス$でBEGIN_OBJECTでした

分類Dev

JSON を解析する Android レトロフィット BEGIN_OBJECT が予期されていましたが、BEGIN_ARRAY でした

分類Dev

GSONが「BEGIN_OBJECTを期待していましたが、BEGIN_ARRAYでした」をスローします

Related 関連記事

  1. 1

    Androidのレトロフィット:java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、行1、列2のパスでBEGIN_OBJECTでした

  2. 2

    java.lang.IllegalStateException:BEGIN_ARRAYが必要でしたが、パスでBEGIN_OBJECTでした

  3. 3

    java.lang.IllegalStateException:BEGIN_ARRAYが必要でしたが、BEGIN_OBJECT -ANDROIDRETROFIT2でした

  4. 4

    java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、1行2列目がBEGIN_OBJECTでした

  5. 5

    java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、BEGIN_OBJECT Androidエラーでした

  6. 6

    java.lang.IllegalStateException:BEGIN_ARRAYが必要でしたが、BEGIN_OBJECTRetrofitでした

  7. 7

    致命的な例外:java.lang.RuntimeException-java.lang.IllegalStateExceptionが原因で発生します。BEGIN_ARRAYが必要ですが、BEGIN_OBJECTでした

  8. 8

    GSONを使用したJson解析:JsonSyntaxException:java.lang.IllegalStateException:BEGIN_OBJECTが必要ですが、行1、列2のパス$でBEGIN_ARRAYでした

  9. 9

    java.lang.IllegalStateException:BEGIN_OBJECTが必要ですが、BEGIN_ARRAYKotlinでした

  10. 10

    java.lang.illegalstateException:BEGIN_OBJECTが必要ですが、BEGIN_ARRAYRetrofitでした

  11. 11

    java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、行1、列2のパスでBEGIN_OBJECTでした$ -Retrofit 2 Android kotlin

  12. 12

    com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、1行目101パスでBEGIN_OBJECTでした

  13. 13

    Map <String、String>をPOJOのリストに変換します-java.lang.IllegalStateException:BEGIN_ARRAYが必要ですが、STRINGでした

  14. 14

    Java gsonエラー:BEGIN_OBJECTが必要ですが、BEGIN_ARRAYでした(ただし、タイプマップは正しいですか?)

  15. 15

    com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:文字列が必要でしたが、BEGIN_OBJECTでした

  16. 16

    Google Gson-com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:文字列が必要でしたが、BEGIN_OBJECTでした

  17. 17

    GsonでJSON(ストリームモード)を解析するJAVAエラー:BEGIN_ARRAYが必要ですが、行1列2パス$でBEGIN_OBJECTでした

  18. 18

    JSONエラー「java.lang.IllegalStateException:BEGIN_OBJECTが必要ですが、1行1列1パス$でSTRINGでした」

  19. 19

    レトロフィットはBEGIN_OBJECTが必要でしたが、BEGIN_ARRAYでした

  20. 20

    BEGIN_ARRAYが必要でしたが、レトロフィット付きのBEGIN_OBJECTでした

  21. 21

    Android-レトロフィット例外BEGIN_OBJECTが必要でしたが、BEGIN_ARRAYでした

  22. 22

    GSON & ボレー => BEGIN_ARRAY が必要でしたが、行 1 列 2 パス $ で BEGIN_OBJECT でした

  23. 23

    Java:BEGIN_OBJECTが必要ですが、行1、列2のパス$でBEGIN_ARRAYでした

  24. 24

    GSONは「BEGIN_OBJECTが必要ですがBEGIN_ARRAYでした」をスローしますか?

  25. 25

    JSON エラー: 原因: java.lang.IllegalStateException: BEGIN_OBJECT が予期されていましたが、行 1 列 1 パス $ で STRING でした

  26. 26

    期待されるBEGIN_ARRAYを取得しましたが、Android(java)でRetrofitを使用してjsonをフェッチしようとすると、1行2列のパス$でBEGIN_OBJECTになりました。

  27. 27

    レトロフィットはBEGIN_ARRAYを想定していましたが、onActivityResultの行1列2パス$でBEGIN_OBJECTでした

  28. 28

    JSON を解析する Android レトロフィット BEGIN_OBJECT が予期されていましたが、BEGIN_ARRAY でした

  29. 29

    GSONが「BEGIN_OBJECTを期待していましたが、BEGIN_ARRAYでした」をスローします

ホットタグ

アーカイブ