我在异步任务中有这个调用。所有参数都正确。在postman或高级rest客户机中,调用工作正常,它返回一个带有对象列表的json。但是如果我尝试用spring在android中执行这个调用,我会出现这样的错误:
org.springframework.http.converter.httpMessageNotreadableException:无法读取JSON:无法从START_OBJECT令牌反序列化java.lang.String实例[source:org.apache.http.conn.eofsensorInputStream@1961b5e;行:1,列:1];嵌套异常是com.fasterxml.jackson.databind.jsonMappingException:无法从[source:org.apache.http.conn.eofsensorinputstream@1961b5e;line:1,column:1]处的START_OBJECT令牌反序列化java.lang.string实例
[
{
"id": 57,
"user_id": 2,
"category_id": 5,
"notification_title": "test 9",
"notification_body": "breve 9",
"description": "Sd sdfds sdfs dfsd fdsf",
"image": null,
"code": "2-5942525969dfa",
"start_date": null,
"expiration_date": null,
"created_at": "2017-06-15 09:24:41",
"updated_at": "2017-06-15 09:24:41"
},
{
"id": 56,
"user_id": 2,
"category_id": 4,
"notification_title": "test 8",
"notification_body": "breve desc 8",
"description": "Sdfsdf sdfds dsfs dsfds",
"image": null,
"code": "2-59424e24570a2",
"start_date": null,
"expiration_date": null,
"created_at": "2017-06-15 09:06:44",
"updated_at": "2017-06-15 09:06:44"
}]
这是我的AsyncTask
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... params) {
JSONObject body = new JSONObject();
try {
body.put("api_token", Config.API_TOKEN);
body.put("user_id", Config.USER_ID);
} catch (JSONException e) {
e.printStackTrace();
}
try {
return template.postForObject(
Config.SERVICE_URL_BASE + "/getallposts",
body.toString(),
String.class
);
} catch (Exception e) {
listener.onError(e.getMessage());
}
return null;
}
@Override
protected void onPostExecute(String response) {
if (response != null) {
try {
List<JSONObject> jsonObjects = ResponseConverter.toJSONArray(response);
listener.onSuccess(jsonObjects);
} catch (JSONException e) {
listener.onError(context.getResources().getString(R.string.cannot_load_posts));
}
} else {
listener.onError(context.getResources().getString(R.string.cannot_load_posts));
}
}
}.execute();
谁能帮帮我吗?
问题解决了,spring framework rest tempolate版本是错误的,我使用了1.0.1版本,但正确的版本是:
compile 'org.springframework.android:spring-android-rest-template:2.0.0.M3'
Animal.java 我为它创建了以下自定义断言: AnimalAssert.java 编辑:基于第一个答案(cglib需要一个),我用一个no arg构造函数更新了动物类,但是抛出了相同的异常
我的应用程序一直在许多Android平台上报告这个问题(4.1、4.0.4、2.3.6.…)。但我无法在我的手机上复制这个问题。我已经在Google上搜索了这个问题,但堆栈跟踪似乎与我的不一样。
我有一台带有Intel CPU的Windows机器(在引导菜单上启用VMX)。我使用VirtualBox在上面运行Ubuntu Guest。我在上面运行qemu,以运行另一个Guest OS,使用kvm(选项)。 我在尝试插入kvm-intel模块时收到以下错误: 我已经检查了来宾操作系统中的vpx标志,但我也没有看到 有没有办法在来宾Ubuntu操作系统中启用kvm支持,以便我可以在Ubuntu
我试图从java程序中使用Spark SQL,其中pom.xml中的依赖关系指向Spark版本1.6.0。下面是程序 但是,我在线程“main”java.lang.nosuchmethoderror:org.apache.spark.sql.sqlcontext.sql(ljava/lang/string;)lorg/apache/spark/sql/dataframe中出现异常;我正在创建一个平
主机系统为ARCHLinux。我想开发需要运行Windows docker容器的.NET4.6.1应用程序。所以我在VirtualBox下运行Win10。然后我在Win10中安装Docker,以运行Windows Docker容器。Linux->VirtualBox->Win10->Docker->Windows Docker容器->要运行的应用程序。 或者更具体地说,VirtualBox是否支持
问题内容: 我正在尝试根据此教程在我的应用程序中实现NotificationListenerService:http : //www.kpbird.com/2013/07/android- notificationlistenerservice.html ,但是调用getActiveNotifications时出现NullPointerException。 我正在向该服务发送广播,该广播应生成所有
问题内容: 因此,我正在构建一个minecraft插件,该插件的一部分从mysql抓取一堆数据块,并在服务器启动时将其加载到缓存中。我有一些代码可以在Eclipse测试用例中正常运行。但是,当我在本地Minecraft服务器中加载插件时,出现了异常。 抛出异常的代码。 是从执行查询返回的实例。 只是返回一个 片段稍大…并不是真的可以显示其他内容。 我看过网上有人说要修复,我需要包括ojdbc6.j
问题内容: 我尝试开发一种访问智能卡的javafx应用程序。 我有一个简单的概念证明,像这样: exepcion是: 问题答案: 只需在64位JDK的旁边(或相反)安装32位JDK,并确保使用32位版本编译并签名JAR / COD文件。 实际上,这是 64位 版本中的 错误 。http://bugs.sun.com/bugdatabase/view_bug.do;jsessionid=f1279f