简体   繁体   English

java.lang.NullPointerException:尝试调用接口方法'java.lang.Object java.util.List.get(int)'

[英]java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object java.util.List.get(int)'

I'm try Convert WordPress into Mobile App, but I have error in here response.body().get(i).getLinks().getWpFeaturedmedia().get(0).getHref())); 我尝试将WordPress转换为移动应用程序,但我在这里有错误response.body().get(i).getLinks().getWpFeaturedmedia().get(0).getHref()));

please help me fix it: 请帮我解决一下:

call.enqueue(new Callback<List<Kesehatan>>() {
    @Override
    public void onResponse(Call<List<Kesehatan>> call, Response<List<Kesehatan>> response) {
        Log.e("kesehatan fragment", " response " + response.body());

        mListPost = response.body();
        progressBar.setVisibility(View.GONE);

        for (int i = 0; i < response.body().size(); i++) {

            String temptdetails = response.body().get(i).getExcerpt().getRendered().toString();
            temptdetails = temptdetails.replace("<p>", "");
            temptdetails = temptdetails.replace("</p>", "");
            temptdetails = temptdetails.replace("[&hellip;]", "");

            list.add(new Model(Model.IMAGE_TYPE, response.body().get(i).getTitle().getRendered(),
                    temptdetails,
                    response.body().get(i).getLinks().getWpFeaturedmedia().get(0).getHref()));

            Log.e("main ", " title " + response.body().get(i).getTitle().getRendered() + " " +
                    response.body().get(i).getId());

        }

        adapter.notifyDataSetChanged();

    }

Error: 错误:

/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.dimasgs.bvet, PID: 11710
    java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object java.util.List.get(int)' on a null object reference
        at com.example.dimasgs.bvet.Fragments.KesehatanFragment$1.onResponse(KesehatanFragment.java:92)
        at retrofit2.ExecutorCallAdapterFactory$ExecutorCallbackCall$1$1.run(ExecutorCallAdapterFactory.java:68)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:214)
        at android.app.ActivityThread.main(ActivityThread.java:7073)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)

The problem is because you're reading the response stream twice with the following code: 问题是因为您使用以下代码读取响应流两次:

Log.e("kesehatan fragment", " response " + response.body());

mListPost = response.body();

You need to store the response.body() value to a string. 您需要将response.body()值存储到字符串中。 Something like this: 像这样的东西:

String responseBody = response.body();
Log.e("kesehatan fragment", " response " + responseBody);
mListPost = responseBody;

See this issue for details: https://github.com/square/okhttp/issues/1240 有关详细信息,请参阅此问题: https//github.com/square/okhttp/issues/1240

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 java.lang.NullPointerException:尝试在 JSoup 库上调用接口方法“int java.lang.Comparable.compareTo(java.lang.Object)” - java.lang.NullPointerException: Attempt to invoke interface method 'int java.lang.Comparable.compareTo(java.lang.Object)' on JSoup Library java.lang.NullPointerException:尝试在从服务器到微调器的空对象引用上调用接口方法“int java.util.List.size()” - java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference from server to spinner Error: java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference - Error: java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference java.lang.NullPointerException:尝试在空对象引用上调用接口方法“java.util.Iterator java.util.List.iterator()” - java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“boolean java.util.ArrayList.add(java.lang.Object)” - java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.util.ArrayList.add(java.lang.Object)' on a null object reference 尝试在空对象引用上调用接口方法&#39;java.lang.Object [] java.util.Collection.toArray()&#39; - Attempt to invoke interface method 'java.lang.Object[] java.util.Collection.toArray()' on a null object reference 尝试调用接口方法“ java.lang.Object [] java.util.Collection.toArray()” - Attempt to invoke interface method 'java.lang.Object[] java.util.Collection.toArray()' Android + java.lang.NullPointerException:尝试调用接口方法 - Android + java.lang.NullPointerException: Attempt to invoke interface method java.lang.NullPointerException:尝试在 null object 引用上调用虚拟方法“boolean java.lang.String.equals(java.lang.Object)” - java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference java.lang.NullPointerException:尝试在 null object 引用上调用虚拟方法“boolean java.lang.String.equals(java.lang.Object)” - java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM