Я пытаюсь получить объект JSON для сервера с помощью Retrofit и Rx Java, но он показывает ошибку. Я не могу получить значение bookprice
из ответа.
Ниже мой JSON ответ от сервера:
{
"data": [
{
"id": "1",
"onlineprice": "100.00",
"bookprice": "100.00"
}
],
"status": true,
"code": 200
}
Класс POJO выдан:
PaymentModel.class
public class PaymentModel {
@SerializedName("data")
@Expose
private List<Payment> data = null;
@SerializedName("status")
@Expose
private Boolean status;
@SerializedName("code")
@Expose
private Integer code;
public PaymentModel(){
}
public List<Payment> getData() {
return data;
}
public void setData(List<Payment> data) {
this.data = data;
}
public Boolean getStatus() {
return status;
}
public void setStatus(Boolean status) {
this.status = status;
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
}
Оплата . java
public class Payment {
@SerializedName("id")
@Expose
private String id;
@SerializedName("onlineprice")
@Expose
private String onlineprice;
@SerializedName("bookprice")
@Expose
private String bookprice;
public Payment(){
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getOnlineprice() {
return onlineprice;
}
public void setOnlineprice(String onlineprice) {
this.onlineprice = onlineprice;
}
public String getBookprice() {
return bookprice;
}
public void setBookprice(String bookprice) {
this.bookprice = bookprice;
}
}
ApiService
public interface ApiService {
@GET("get_payment")
Observable<PaymentModel> getPayment();
}
MainActivity. java
List<Payment> videoPaymentList = new ArrayList<>();
Retrofit retrofit = RetrofitClient.getInstance();
ApiService apiService = retrofit.create(ApiService.class);
apiService.getPayment().subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<PaymentModel>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(PaymentModel paymentModel) {
videoPaymentList = paymentModel.getData();
}
@Override
public void onError(Throwable e) {
Toast.makeText(getApplicationContext(),e.getMessage(),Toast.LENGTH_SHORT).show();
}
@Override
public void onComplete() {
}
});
}
Кто-нибудь, дайте мне знать, что я делаю не так. Любая помощь будет принята с благодарностью.
СПАСИБО