Объединение означает, что анализатор преобразует узлы CDATA в узлы Text.Когда документ сериализуется в XML, текстовое содержимое (HTML), конечно же, должно быть экранировано.Если вы хотите что-то сделать с HTML, вы должны сначала извлечь его как текст - затем вы можете отобразить его в браузере или как угодно.
ОБНОВЛЕНИЕ:
1) Вы можете использовать JTidyhttp://jtidy.sourceforge.net/index.html, для анализа содержимого HTML и создания XML или XHTML.Примерно так:
DocumentBuilder db = factory.newDocumentBuilder();
Document doc = db.parse(..)); // parse your input document
// Obtain the HTML content, may be buried deeper down or
// or scattered around in different places
String text = doc.getDocumentElement().getTextContent();
// Parse with JTidy to convert from HTML to XHTML
Tidy tidy = new Tidy();
tidy.setXHTML(true);
Document htmlDoc = tidy.parseDOM(new StringReader(text), null);
Transformer t = TransformerFactory.newInstance().newTransformer();
t.setOutputProperty(OutputKeys.INDENT, "yes");
t.transform(new DOMSource(htmlDoc), new StreamResult(System.out));
2) Да.Когда у вас есть разобранный htmlDoc (выше), вы можете просмотреть его или применить XPATH или что-то еще, чтобы извлечь нужные фрагменты текста.Просто помните, что это будет выход из '\ u00A0'.Поэтому, если вы действительно хотите простой текст, вам, возможно, следует сделать
String s = text.replace('\u00A0', ' ');