Facing this problem past few days.Does any guys check this issue? Any help would be greatly appreciated.How can I solved this problem?
GSON throwing Expected BEGIN_OBJECT but was BEGIN_ARRAY
Problem coming from
override fun onSuccess(str_SUCCESS: String)
{
System.out.println("JSON_IS"+str_SUCCESS)
val paymentScheduleModel = Gson().fromJson<PaymentScheduleModel>(str_SUCCESS, PaymentScheduleModel::class.java) // Problem here
}
Json Response is
{
"status": {
"statusCode": 10016,
"isSuccess": true,
"message": "Success"
},
"data": {
"payback_schedule": [
{
"id": 2,
"paid_amount": "INR NaN",
"paidStatus": "Upcoming Payback",
"paid_status": "P",
"s_date": "05/01/2018 12:31:10",
"e_date": "11/01/2018 12:31:10",
"current_balance": "INR 399",
"payanytime_button_status": "active",
"btnColor": "red",
"btnHexColor": "#D2322D"
},
{
"id": 3,
"paid_amount": "INR NaN",
"paidStatus": "Upcoming Payback",
"paid_status": "P",
"s_date": "12/01/2018 12:31:10",
"e_date": "18/01/2018 12:31:10",
"current_balance": "INR 399",
"payanytime_button_status": "active",
"btnColor": "red",
"btnHexColor": "#D2322D"
}
]
}
}
PaymentScheduleModel
data class PaymentScheduleModel(@SerializedName("payback_schedule") val payback_schedule: PaymentSchedule)
data class PaymentSchedule
(@SerializedName("id") val id: Int,
@SerializedName("paid_amount") val paid_amount:String,
@SerializedName("paidStatus") val paidStatus:String,
@SerializedName("paid_status") val paid_status:String,
@SerializedName("s_date") val s_date:String,
@SerializedName("e_date") val e_date:String,
@SerializedName("current_balance") val current_balance:String,
@SerializedName("payanytime_button_status") val payanytime_button_status:String,
@SerializedName("btnColor") val btnColor:String,
@SerializedName("btnHexColor") val btnHexColor:String)