Java Jackson – 意外的令牌(START_ARRAY),预期为VALUE_STRING

嗨,我试图在java中使用jackson反序列化json数据。 我面临一个错误如下:意外的令牌(START_ARRAY),预期的VALUE_STRING:需要包含类型ID的JSON字符串(对于附件的子类型)这是我使用的代码。 请让我知道如何解决此问题。 提前致谢。

ObjectMapper mapper = new ObjectMapper(); mapper.enableDefaultTyping(); Audio audio = new Audio(2,2,"www.google.com","HelloWorld"); List link = new ArrayList(); link.add(audio); try { String jsonDataString= mapper.writerWithDefaultPrettyPrinter().writeValueAsString(link); System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(link)); Attachment f1 = new Attachment(); f1 = mapper.readValue(jsonDataString,Attachment.class); } catch (JsonProcessingException e) { // TODO Auto-generated catch block e.printStackTrace(); } 

JSON:

 [[ "Audio", { "url" : "www.google.com", "title" : "HelloWorld", "aid" : 2, "owner_id" : 2 } ]]