2016-04-25 2 views
2

я есть получить два ответа успеха и не Мой ответ JSON успех

{ 
  "Status": 1, 
  "Message": "records are available", 
  "Result": { 
    "id": 10135, 
    "email": "[email protected]", 
    "mobile": "8545324342", 
    "first_name": "xyz1", 
    "last_name": null, 
    "vendor_type_id": 1, 
    "status": "A", 
    "subscription_name": "free", 
    "profile_Image": null, 
    "attempt_date": "2016-04-23T12:15:56.4815954" 
  } 
} 

мой ответ JSON неудачу

{"Status":0,"Message":"please enter correct email and password","Result":""} 

журнала сообщение: FailResponseretrofit. RetrofitError: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: ожидается BEGIN_OBJECT, но был STRING в строке 1 столбец 75 путь $. Результат Я использую модифицированную библиотеку my model cl задница

public class LoginBean { 
    private String Status; 
private String Message; 

private ResultLogin Result; 

public String getStatus() { 
    return Status; 
} 

public void setStatus(String status) { 
    Status = status; 
} 

public String getMessage() { 
    return Message; 
} 

public void setMessage(String message) { 
    Message = message; 
} 

public ResultLogin getResult() { 
    return Result; 
} 

public void setResult(ResultLogin result) { 
    Result = result; 
} 

public class ResultLogin{ 

    private String id; 

    private String email; 

    private String mobile; 

    private String first_name; 

    private String last_name; 

    private String vendor_type_id; 

    private String status; 

    private String subscription_name; 

    public String getId() { 
     return id; 
    } 

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

    public String getEmail() { 
     return email; 
    } 

    public void setEmail(String email) { 
     this.email = email; 
    } 

    public String getMobile() { 
     return mobile; 
    } 

    public void setMobile(String mobile) { 
     this.mobile = mobile; 
    } 

    public String getFirst_name() { 
     return first_name; 
    } 

    public void setFirst_name(String first_name) { 
     this.first_name = first_name; 
    } 

    public String getLast_name() { 
     return last_name; 
    } 

    public void setLast_name(String last_name) { 
     this.last_name = last_name; 
    } 

    public String getVendor_type_id() { 
     return vendor_type_id; 
    } 

    public void setVendor_type_id(String vendor_type_id) { 
     this.vendor_type_id = vendor_type_id; 
    } 

    public String getStatus() { 
     return status; 
    } 

    public void setStatus(String status) { 
     this.status = status; 
    } 

    public String getSubscription_name() { 
     return subscription_name; 
    } 

    public void setSubscription_name(String subscription_name) { 
     this.subscription_name = subscription_name; 
    } 
} 

}

мой Java-код

Как анализировать данные JSON внутри объектных данных JSON

RestClient.post().pharmacyLogin(etEmail.getText().toString(), etPassword.getText().toString(), new Callback<LoginBean>() { 
     @Override 
     public void success(LoginBean loginBean, Response response) { 
      //Log.d("Success", "Response" + response); 
      try { 
       // dialog.dismiss(); 
       Status = loginBean.getStatus(); 
       Message = loginBean.getMessage(); 
       String id = loginBean.getResult().getId(); 

       System.out.println("LoginResponse" + Status + "--" + Message + "--" + id); 
      } catch (Exception e) { 
       e.printStackTrace(); 
      } 
     } 

     @Override 
     public void failure(RetrofitError error) { 
      Log.d("Success", "FailResponse" + error); 
      //AppConstants.showToastMessage(getApplication(), "Wrong Login Detail"); 
     } 
    }); 
+0

мой кот Log Error Log: FailResponseretrofit.RetrofitError: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Ожидаемая строка, но была BEGIN_OBJECT в строке 1 колонки 57 путь $ .Result –

+0

вы можете вставить код класса модели – mdDroid

+0

Опубликуйте свой класс модели, в котором вы пытаетесь связать выше ответ –

ответ

0

Я ответ есть что-то, что это строка, но вы пытаетесь использовать это как объект, поэтому получение такой ошибки

1

Посмотрите на лету Ур отказывает.

{"Status":0,"Message":"please enter correct email and password","Result":""} 

Посмотрите, как результат является строкой, а не объектом JSON?

Это объект JSON в вашем успешном ответе.

У вас есть несогласованная модель, и это ваша проблема.

Смежные вопросы