2017-08-31 58 views
1

请帮我这个降压:无法将START_ARRAY标记的java.lang.String实例反序列化;

Failed to read HTTP message: org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Can not deserialize instance of java.lang.String out of START_ARRAY token; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.lang.String out of START_ARRAY token 
at [Source: [email protected]; line: 1, column: 31] 

我发送以下JSON请求:

{"title": "Test", "category": ["2","4","3",1], "description": "Test", "username": ""} 

在 “类别” 栏中出现的错误。

我用一个PostgreSQL数据库 和我有以下型号:

@Id 
@Column(name = "ID") 
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "idea_seq") 
@SequenceGenerator(name = "idea_seq", sequenceName = "idea_seq", allocationSize = 1) 
private Integer id; 

@Column(name = "TITLE", length = 100) 
@NotNull 
@Size(min = 1, max = 100) 
private String title; 

@Column(name = "CATEGORY", length = 10) 
@NotNull 
@Size(min = 1, max = 100) 
private String[] category; 

@Column(name = "DESCRIPTION", length = 1000) 
@NotNull 
@Size(min = 1, max = 1000) 
private String description; 

@Column(name = "USERNAME", length = 100) 
@NotNull 
@Size(min = 1, max = 100) 
private String username; 

我会很高兴的任何帮助。我已经有这个bug几天了。

+1

发布相关代码,以及完整的excatption堆栈跟踪。另外,修复你的JSON:',1]'应该是',“1”]'。 –

+1

当我谷歌此错误消息在StackOverflow显示了三个其他线程。你有没有检查过它们是否适合你的问题? – Lothar

+0

嗨JB Nizet,我已经发布了整个异常堆栈跟踪。什么是你的相关代码? @洛塔尔:你真的认为我不会先检查那些人吗? – justus

回答

0

您类别JSON包含

“类别”:[ “2”, “4”, “3”,]

这需要被引用。

+0

对不起,我的坏。错误仍然存​​在 – justus

+0

@justus我觉得很难相信。你有没有尝试清洁/重建? –

+0

如果您仍然有问题,请尝试更改private String []类别;以私人名单类别; –

相关问题