-1

In my retrofit call, something goes wrong.I created 3 list for parsing below json naming as StudentAssignmentList(main list),AssignmentDataList(data array listing) and AssignmentDetailsList(assignment array listing) .In AssignmentDataList I have a method as getAssignment.But it returns null after getting response.-->response.body().getAssignment()

{
    "result": true,
    "data": [
        {
           "date":"12/10/2019",
            "assignment": [
                {
                    "subject_name": "English",
                    "id": 1,
                    "date": "2019-08-03",
                    "created_date": "2019-08-03"
                }
            ]
        },

        {
           "date":"13/10/2019",
            "assignment": [
                {
                    "subject_name": "English",
                    "id": 1,
                    "date": "2019-08-09",
                    "created_date": "2019-08-08"
                }
            ]
        },
        {
           "date":"14/10/2019",
            "assignment": [
                {
                    "subject_name": "English",
                    "id": 1,
                    "date": "2019-08-09",
                    "created_date": "2019-08-09"
                }
            ]
        }
    ],
    "total_pages": 1
}
Anjana
  • 1
  • 4

1 Answers1

0

Use websites like http://www.jsonschema2pojo.org/ if you don't know how to generate model. Here is model generated in your case:

Assignment

    public class Assignment {

@SerializedName("subject_name")
@Expose
private String subjectName;
@SerializedName("id")
@Expose
private Integer id;
@SerializedName("date")
@Expose
private String date;
@SerializedName("created_date")
@Expose
private String createdDate;

public String getSubjectName() {
return subjectName;
}

public void setSubjectName(String subjectName) {
this.subjectName = subjectName;
}

public Integer getId() {
return id;
}

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

public String getDate() {
return date;
}

public void setDate(String date) {
this.date = date;
}

public String getCreatedDate() {
return createdDate;
}

public void setCreatedDate(String createdDate) {
this.createdDate = createdDate;
}

}

Datum

public class Datum {

@SerializedName("date")
@Expose
private String date;
@SerializedName("assignment")
@Expose
private List<Assignment> assignment = null;

public String getDate() {
return date;
}

public void setDate(String date) {
this.date = date;
}

public List<Assignment> getAssignment() {
return assignment;
}

public void setAssignment(List<Assignment> assignment) {
this.assignment = assignment;
}

}

Main model

public class Example {

@SerializedName("result")
@Expose
private Boolean result;
@SerializedName("data")
@Expose
private List<Datum> data = null;
@SerializedName("total_pages")
@Expose
private Integer totalPages;

public Boolean getResult() {
return result;
}

public void setResult(Boolean result) {
this.result = result;
}

public List<Datum> getData() {
return data;
}

public void setData(List<Datum> data) {
this.data = data;
}

public Integer getTotalPages() {
return totalPages;
}

public void setTotalPages(Integer totalPages) {
this.totalPages = totalPages;
}

}
Nikola C
  • 322
  • 6
  • 22
  • I am using similar model class.I am getting response but getAssignment() method returns null. – Anjana Aug 20 '19 at 12:17
  • 1
    Please avoid answering obviously off-topic questions. – Vladyslav Matviienko Aug 20 '19 at 12:18
  • @Anjana please share the rest of your code. – Nikola C Aug 20 '19 at 12:23
  • @VladyslavMatviienko ok won't happen again. – Nikola C Aug 20 '19 at 12:23
  • @NikolaC Thanks for your reply.In my retrofit call, something goes wrong.I created 3 list for parsing above json naming as StudentAssignmentList(main list),AssignmentDataList(data array listing) and AssignmentDetailsList(assignment array listing).And making call to Retrofit as Call call .In AssignmentDataList I have a method as getAssignment.But it returns null after getting response.-->response.body().getAssignment() – Anjana Aug 20 '19 at 12:34