我正在尝试使用 getText() 在 JDOM2 中检索 CDATA 值,但我只得到以下内容 -
<![CDATA[ ]]> 
我的 XML 如下所示
<ROOT>
 <CHILD>
    <P><![CDATA[<ROOT><ELEMENT>SOMECONTENT</ELEMENT></ROOT>]]></P>
 </CHILD>
</ROOT>
CDATA 包含我需要的 XML 内容作为字符串来存储它 elsewejhere 代码(片段)如下所示
XPathFactory xpfac = XPathFactory.instance();
XPathExpression<Element> xElements = xpfac.compile(sXpath,Filters.element(),null,Namespace.getNamespace("myns", "http://www.namespace.com/ns"));
List<Element> elements = xElements.evaluate(doc);       
for (Element xElem : elements) {
    if(!isCDATA)
    {
        sRetval=xElem.getValue();
    }
    else
    {
        sRetval=xElem.getText();
    }
    return sRetval;
}
getValue()工作正常,而getText()只返回<![CDATA[ ]]> 
当然我的 XPAHT 看起来像这样
//ROOT/CHILD/P
知道如何获取 CDATA 的内容吗?
编辑:如果我重新  <P><![CDATA[ SOMECONTENT]]></P>获得“SOMECONTENT”..所以我无法从 CDATA 获取 XML 内容