У меня есть строка JSON:
"[{\"is_translator\":false,\"follow_request_sent\":false,\"statuses_count\":1058}]"
Используя PHP json_decode()
на строке и делая print_r
, выводится:
Array
(
[0] => stdClass Object
(
[is_translator] =>
[follow_request_sent] =>
[statuses_count] => 1058
)
)
Это показывает, что это действительноJSON.
Однако использование библиотеки Джексона приводит к ошибке:
Исключение в потоке "main" org.codehaus.jackson.map.JsonMappingException: Невозможно десериализовать экземпляр java.util..LinkedHashMap из токена START_ARRAY по адресу [Источник: java.io.StringReader@a761fe;строка: 1, столбец: 1]
Вот простой код:
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
public class tests {
public static void main(String [] args) throws IOException{
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> fwers = mapper.readValue("[{\"is_translator\":false,\"follow_request_sent\":false,\"statuses_count\":1058}]", new TypeReference <Map<String, Object>>() {});
System.out.println(fwers.get("statuses_count"));
}
}
Может кто-нибудь сказать мне, что не так и решение?
Спасибо.