error Retrofit2 java.io.EOFException: End of input at line 1 column 1

Viewed 250

I'm using Retrofit to consume a REST API endpoint, and I'm having the following issue. I think the something is wrong with data model on TransactionResponse class, but not sure yet.

java.io.EOFException: End of input at line 1 column 1 path $ in Android retrofit

My call request is as follows.

@POST("pelanggan/register_user") Call register(@Body RegisterRequestJson param);

RegisterResponseJson class :

public class RegisterResponseJson {

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

    @SerializedName("data")
    @Expose
    private List<User> data = new ArrayList<>();

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

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

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

This My WEB Service Controller

 function register_user_post() {
        if (!isset($_SERVER['PHP_AUTH_USER'])) {
            header("WWW-Authenticate: Basic realm=\"Private Area\"");
            header("HTTP/1.0 401 Unauthorized");
            return false;
        }

        $data = file_get_contents("php://input");
        $dec_data = json_decode($data);

        $email = $dec_data->email;
        $check_exist = $this->Pelanggan_model->check_exist($email);
        if ($check_exist) {
            $message = array(
                'message' => 'user exist',
                'data' => []
            );
            $this->response($message, 200);
        } else {
            $count_user = $this->Pelanggan_model->count_user()->row('count') + 1;
            $data_signup = array(
                'id' => 'P' . $count_user,
                'nama_depan' => $dec_data->nama_depan,
                'nama_belakang' => $dec_data->nama_belakang,
                'email' => $dec_data->email,
                'no_telepon' => $dec_data->no_telepon,
                'password' => sha1($dec_data->password),
                'alamat' => $dec_data->alamat,
                'tgl_lahir' => $dec_data->tgl_lahir,
                'tempat_lahir' => $dec_data->tempat_lahir,
                'reg_id' => $dec_data->reg_id
            );
            $signup = $this->Pelanggan_model->signup($data_signup);
            if ($signup) {
                $condition = array(
                    'password' => sha1($dec_data->password),
                    'email' => $dec_data->email
                );
                $datauser = $this->Pelanggan_model->get_data_pelanggan($condition);
                $message = array(
                    'message' => 'success',
                    'data' => $datauser->result()
                );
                $this->response($message, 200);
            } else {
                $message = array(
                    'message' => 'failed',
                    'data' => []
                );
                $this->response($message, 200);
            }
        }
    }

This My WEB Service Model


    public function signup($data_signup){
        $signup = $this->db->insert('pelanggan', $data_signup);
        
        $dataIns = array(
            'id_user'=>$data_signup['id'],
            'saldo'=>0
        );
        $insSaldo = $this->db->insert('saldo', $dataIns);
        return $signup;
    
    }

This My SignUp Activity

 private void onSignUpClick() {
        showProgressDialog(R.string.dialog_loading);
        RegisterRequestJson request = new RegisterRequestJson();
        request.setNamaDepan(textFirstName.getText().toString());
        request.setNamaBelakang(textLastName.getText().toString());
        request.setEmail(textEmail.getText().toString());
        request.setPassword(textPassword.getText().toString());
        request.setNoTelepon(textPhone.getText().toString());
        request.setAlamat(textAddress.getText().toString());
        request.setTempatLahir(textPlaceOfBirth.getText().toString());
        request.setTglLahir(textDateOfBirth.getText().toString());

        Realm realm = Realm.getDefaultInstance();
        FirebaseToken token = realm.where(FirebaseToken.class).findFirst();
        Log.e(TAG, "onSignUpClick: " + token);
        if (token != null) {
            request.setRegId(token.getTokenId());
        }
 UserService service = ServiceGenerator.createService(UserService.class, request.getEmail(), request.getPassword());
        service.register(request).enqueue(new Callback<RegisterResponseJson>() {
            @Override
            public void onResponse(Call<RegisterResponseJson> call, Response<RegisterResponseJson> response) {
                hideProgressDialog();
                if (response.isSuccessful()) {
                    if (response.body().getMessage().equalsIgnoreCase("success")) {
                        Intent retIntent = getIntent();
                        retIntent.putExtra(USER_KEY, response.body().getData().get(0));
                        setResult(Activity.RESULT_OK, retIntent);
                        finish();
                    } else {
                        Toast.makeText(SignUpActivity.this, "Register gagal", Toast.LENGTH_LONG).show();
                    }
                } else {
                    Toast.makeText(SignUpActivity.this, "System error", Toast.LENGTH_LONG).show();
                }
            }

            @Override
            public void onFailure(Call<RegisterResponseJson> call, Throwable t) {
                hideProgressDialog();
                t.printStackTrace();
                Toast.makeText(SignUpActivity.this, "System error: " + t.getLocalizedMessage(), Toast.LENGTH_LONG).show();
            }
        });
}

This My Log in Console

D/OkHttp: --> POST http://grajek2.my.id/api/pelanggan/register_user http/1.1 D/OkHttp: Content-Type: application/json; charset=UTF-8 Content-Length: 361 Authorization: Basic Y3Jhc2hqYWNrNTRAZ21haWwuY29tOmVtYmlsYW45OQ== Accept: application/json {"alamat":"Niten","email":"crashjack54@gmail.com","nama_belakang":"Ferdiansyah","nama_depan":"Aziz","no_telepon":"086767541234","password":"sembilan99","reg_id":"fOrYfKvtQLSelswiJrrUUQ:APA91bGh6fY6SmiG2bmiMjSd9FJV1HsM_azGxRTNukwW4FC-3W3lzE-hCqhrM0WO1sknxyqcr5JSi1CCMh2JOuMWRHZDzu_f9x6MiVupJoIF9Am67l0kzF0z4sxGFIx9HGr1MKTphqFh","tempat_lahir":"Karanganyar","tgl_lahir":"22/09/2002"} --> END POST (361-byte body)

0 Answers
Related