- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我在标题中遇到了错误,我正在使用以下代码:
...
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(
new MappingJacksonHttpMessageConverter());
String url = "w/ever";
List<Teacher> teachers = (List<Teacher>) restTemplate.getForObject(
url, List.class);
...
我的 Teacher 类看起来像:
import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;
/**
* Teacher generated by hbm2java
*/
public class Teacher implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private Integer id;
private ClassGroup classGroup;
// private Users users;
private String lastName;
private boolean admin;
private String telephoneNo;
private String address;
private String email;
private String firstName;
private Set<SubjectTeacherForClass> subjectteacherforclasses = new HashSet<SubjectTeacherForClass>(
0);
public Teacher() {
}
public Teacher(String lastName, boolean admin, String email,
String firstName) {
// this.users = users;
this.lastName = lastName;
this.admin = admin;
this.email = email;
this.firstName = firstName;
}
public Teacher(ClassGroup classGroup, String lastName, boolean admin,
String telephoneNo, String address, String email, String firstName,
Set<SubjectTeacherForClass> subjectteacherforclasses) {
this.classGroup = classGroup;
// this.users = users;
this.lastName = lastName;
this.admin = admin;
this.telephoneNo = telephoneNo;
this.address = address;
this.email = email;
this.firstName = firstName;
this.subjectteacherforclasses = subjectteacherforclasses;
}
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public ClassGroup getClassgroup() {
return this.classGroup;
}
public void setClassgroup(ClassGroup classGroup) {
this.classGroup = classGroup;
}
/*
* @ManyToOne(fetch = FetchType.LAZY)
*
* @JoinColumn(name = "UserId", nullable = false) public Users getUsers() {
* return this.users; }
*
* public void setUsers(Users users) { this.users = users; }
*/
public String getLastName() {
return this.lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public boolean isAdmin() {
return this.admin;
}
public void setAdmin(boolean admin) {
this.admin = admin;
}
public String getTelephoneNo() {
return this.telephoneNo;
}
public void setTelephoneNo(String telephoneNo) {
this.telephoneNo = telephoneNo;
}
public String getAddress() {
return this.address;
}
public void setAddress(String address) {
this.address = address;
}
public String getEmail() {
return this.email;
}
public void setEmail(String email) {
this.email = email;
}
public String getFirstName() {
return this.firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public Set<SubjectTeacherForClass> getSubjectteacherforclasses() {
return this.subjectteacherforclasses;
}
public void setSubjectteacherforclasses(
Set<SubjectTeacherForClass> subjectteacherforclasses) {
this.subjectteacherforclasses = subjectteacherforclasses;
}
}
我的 react 看起来像
{
"teacherList": [
{
"id": 1,
"lastName": "Corega",
"admin": true,
"telephoneNo": "333333",
"address": "str Albinii 45",
"email": "sscac@yahoo.com",
"firstName": "Constantin"
},
{
"id": 2,
"lastName": "Cotul",
"admin": false,
"telephoneNo": "333333",
"address": "str Dorobanti 21",
"email": "ascasa@gmail.com",
"firstName": "Monica"
},
{
"id": 3,
"lastName": "Ramona",
"admin": false,
"telephoneNo": "333333",
"address": "str. Izlazului 78",
"email": "asc@yahoo.com",
"firstName": "Calina"
},
{
"id": 4,
"lastName": "Cruceriu",
"admin": false,
"telephoneNo": "333333",
"address": "str Muresului 92",
"email": "c2c2@gmail.com",
"firstName": "Alexandrina"
},
{
"id": 5,
"lastName": "Moldovan",
"admin": false,
"telephoneNo": "333333",
"address": "str Fabricii 56",
"email": "casca@yahoo.com",
"firstName": "Camelia"
}
]
}
我得到的异常是:
01-03 11:18:32.809: E/AndroidRuntime(16203): FATAL EXCEPTION: AsyncTask #1
01-03 11:18:32.809: E/AndroidRuntime(16203): java.lang.RuntimeException: An error occured while executing doInBackground()
01-03 11:18:32.809: E/AndroidRuntime(16203): at android.os.AsyncTask$3.done(AsyncTask.java:299)
01-03 11:18:32.809: E/AndroidRuntime(16203): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
01-03 11:18:32.809: E/AndroidRuntime(16203): at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
01-03 11:18:32.809: E/AndroidRuntime(16203): at java.util.concurrent.FutureTask.run(FutureTask.java:239)
01-03 11:18:32.809: E/AndroidRuntime(16203): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
01-03 11:18:32.809: E/AndroidRuntime(16203): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
01-03 11:18:32.809: E/AndroidRuntime(16203): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
01-03 11:18:32.809: E/AndroidRuntime(16203): at java.lang.Thread.run(Thread.java:856)
01-03 11:18:32.809: E/AndroidRuntime(16203): Caused by: org.springframework.http.converter.HttpMessageNotReadableException: Could not read JSON: Can not deserialize instance of java.util.ArrayList out of START_OBJECT token
01-03 11:18:32.809: E/AndroidRuntime(16203): at [Source: libcore.net.http.ChunkedInputStream@417f4378; line: 1, column: 1]; nested exception is org.codehaus.jackson.map.JsonMappingException: Can not deserialize instance of java.util.ArrayList out of START_OBJECT token
01-03 11:18:32.809: E/AndroidRuntime(16203): at [Source: libcore.net.http.ChunkedInputStream@417f4378; line: 1, column: 1]
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.springframework.http.converter.json.MappingJacksonHttpMessageConverter.readInternal(MappingJacksonHttpMessageConverter.java:127)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.springframework.http.converter.AbstractHttpMessageConverter.read(AbstractHttpMessageConverter.java:147)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.springframework.web.client.HttpMessageConverterExtractor.extractData(HttpMessageConverterExtractor.java:76)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:483)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:438)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.springframework.web.client.RestTemplate.getForObject(RestTemplate.java:236)
01-03 11:18:32.809: E/AndroidRuntime(16203): at com.catalog.views.MenuActivity$isConnectedTask.doInBackground(MenuActivity.java:176)
01-03 11:18:32.809: E/AndroidRuntime(16203): at com.catalog.views.MenuActivity$isConnectedTask.doInBackground(MenuActivity.java:1)
01-03 11:18:32.809: E/AndroidRuntime(16203): at android.os.AsyncTask$2.call(AsyncTask.java:287)
01-03 11:18:32.809: E/AndroidRuntime(16203): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
01-03 11:18:32.809: E/AndroidRuntime(16203): ... 4 more
01-03 11:18:32.809: E/AndroidRuntime(16203): Caused by: org.codehaus.jackson.map.JsonMappingException: Can not deserialize instance of java.util.ArrayList out of START_OBJECT token
01-03 11:18:32.809: E/AndroidRuntime(16203): at [Source: libcore.net.http.ChunkedInputStream@417f4378; line: 1, column: 1]
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.deser.StdDeserializationContext.mappingException(StdDeserializationContext.java:219)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.deser.StdDeserializationContext.mappingException(StdDeserializationContext.java:212)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.deser.std.CollectionDeserializer.handleNonArray(CollectionDeserializer.java:246)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:204)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:194)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:30)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2732)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1923)
01-03 11:18:32.809: E/AndroidRuntime(16203): at org.springframework.http.converter.json.MappingJacksonHttpMessageConverter.readInternal(MappingJacksonHttpMessageConverter.java:124)
我对映射器的 Maven 依赖项是:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.9</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.9</version>
</dependency>
对此有什么想法吗?
最佳答案
已修复!我所做的是创建一个类,该类只有一个名为“teacherList”的教师 ArrayList 以及该数组列表的 getter 和 setter。把它放在请求中,瞧。一切都从那里开始!
关于android - Spring 和 Jackson Mapper 无法从 START_OBJECT 中反序列化 CUSTOM_CLASS 的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14136017/
我不知道我的 ES 查询有什么问题。我想按特定字段进行筛选,并按其他字段排序。 请求: GET /_search { "query" : { "term": {
我一直在尝试运行以下查询,但每次运行时都会收到以下错误: nested: ElasticsearchParseException[Expected field name but got START_O
我正在针对 AWS Elasticsearch 5.1 运行此查询并收到格式错误的查询错误。这是请求的正文。我基本上只是检查该字段在时间范围内是否存在。 { "query": { "boo
我想在Elasticsearch中表达这个SQL: select * from ticket where user_id = 1 and (class_a = 1000010 or class_b =
我有以下查询, 1.获取所有日志类型错误的数据。 2.排除logmessage字段中包含error occured的所有数据。 curl -s -XGET 'localhost:9200/index_
尝试将我的 json 格式的 tcpdump 发送到 elasticsearch 时,我收到以下错误: curl -X PUT --data-binary @myjson 'localhost:920
在 elasticsearch 5.6.2 和 5.6.3 (Ubuntu 16.04) 中,这个查询 GET _search { "simple_query_string": {
我的 Json 看起来像(并且不可修改) { .... "Sale": [ "SaleLines": { "SaleLine":
我对 Codehaus Jackson 的用户有疑问。我有一个具有下一个属性和映射器声明的对象: public class AuthenticatedPrincipal implements Seri
有人可以解释一下这个查询有什么问题吗?我需要将此生成的查询从 Elasticsearch 2 转换为 Elasticsearch 6。在 ES2 中,此查询运行良好,但在 ES6 中,它会抛出一个错误
我想在 aggs 中放置双重过滤器。像这样。 "aggs": { "download1" : { "filter" : [ { "term": { "IPV
当我尝试获取之前插入数据库的更新数据时,我的代码中遇到了一些问题。 postman 的错误代码: "JSON parse error: Can not deserialize instance of
我试图从 elasticsearch 1.7 迁移到 5.1,但我遇到了问题: curl -XGET http://127.0.0.1:9200/openlist_ru-formulars/formu
我的搜寻内容: { "query":{ "filtered":{ "filter":{ "bool":{ "s
我正在使用Putelasticsearch5处理器,但上游又有几个处理器。 上游处理器生成的json如下所示: {“id”:“1234”,“名称”:“苹果”} {“id”:“5678”,“名称”:“橙
我是Elastic Search的新手,并且在我的应用程序中使用ES。当我在ES的单个表上运行简单查询时,它就可以工作了。.但是,当我使用嵌套查询时,它并不能给我正确的结果。 基本上,我有两个表peo
在 Elasticsearch 中出现以下错误。 RemoteTransportException[[CN8keD-][127.0.0.1:9300][indices:data/write/updat
我面临着 Spring 和 Jackson 的问题。我试图从 this API 获取输入。我使用 http://www.jsonschema2pojo.org/ 创建了 Java 模型 型号为 pac
大家好,我想将 int 和 String 数组作为 RequestBody 发送:这是 json: { "customUiModel": [1, 3, 5], "user": "use
Elasticsearch 在 Elasticsearch 中给出类似 Unknown key for a START_OBJECT in [bool] 的错误。 我的查询如下:已更新 var sea
我是一名优秀的程序员,十分优秀!