#java #json #xml #org.json
#java #json #xml #org.json
Вопрос:
Я должен был преобразовать строку JSON в XML. Как было предложено в одном ответе StackOverflow, я использовал метод XML.toString .
String json_data = "{"student":{"name":"Neeraj Mishra", "age":"22"}}";
JSONObject obj = new JSONObject(json_data);
//converting json to xml
String xml_data = XML.toString(obj);
System.out.println(xml_data);
Приведенный выше метод отлично работает для последней версии org.json, но в моем проекте используется версия org.json 20080701, и при этом методе XML.toString(obj) выдает следующую ошибку;
Exception in thread "main" java.lang.NoSuchMethodError:
org.json.JSONObject.entrySet()Ljava/util/Set;
at org.json.XML.toString(XML.java:502)
at org.json.XML.toString(XML.java:471)
at com.testing.main(testing.java:13)
И я не могу обновить версию.
Комментарии:
1. Но вы не используете
entrySet
в своем коде, пожалуйста, опубликуйте полную трассировку стека, чтобы мы могли видеть, что вызывает исключение.2. Исключение в потоке «main» java.lang. Ошибка noSuchMethod: org.json.JSONObject.entrySet()Ljava/util/Set; в org.json.XML.toString(XML.java:502) в org.json.XML.toString(XML.java:471) в com.yodlee.aim.autoconfig.services.testing.main(testing.java:500) Это трассировка стека
3. Вместо этого добавьте это к вопросу, отредактировав его, а также укажите, какая строка находится в вашем коде, поскольку мы не знаем номеров строк
4. обновлено @JoakimDanielson
Ответ №1:
Вы можете использовать более старую версию org.json, например «20160212»