Я отправил это на группе Jsoup в google.groups, но не кажется, что будет много активности там в последнее время, так что я постараюсь здесь также ...jsoup ошибка в Element.empty()
следующий код
final String html = "<html><head></head><body><div></div></body></html>";
Document doc = Jsoup.parse(html);
Element body = doc.body();
Element div = body.select("div").first();
body.empty(); // <--- gives exception at line 56 below
// body.children().remove(); // does not give exception
body.appendChild(div); // line 56, IndexOutOfBoundsException here
с Jsoup 1.6.1, дает мне IndexOutOfBoundsException со следующими (частично, топ 7 строк) трассировки стека
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.remove(ArrayList.java:387)
at org.jsoup.nodes.Node.removeChild(Node.java:394)
at org.jsoup.nodes.Node.reparentChild(Node.java:420)
at org.jsoup.nodes.Node.addChildren(Node.java:402)
at org.jsoup.nodes.Element.appendChild(Element.java:225)
at webfilter.FilterY.<init>(FilterY.java:56)
здесь FilterY мой класс, содержащий код, приведенный выше. Если я использую body.children(). Remove() вместо body.empty(), он отлично работает.
Вопрос ... я злоупотребляю Jsoup здесь, или это действительно ошибка?
Кроме того, можно также назвать клоном() на сНу Element –