2015-09-26 82 views
1

我有一個XML文件,我需要在spring-mvc中使用Castor在"<![CDATA["標籤中提取信息。我需要知道如何編寫mapping.xml文件。Castor映射:如何映射一個<![CDATA [標籤

這裏是XML:

<comprobante> 
    <![CDATA[<?xml version="1.0" encoding="UTF-8"?> 
     <comprobanteRetencion id="comprobante" version="1.0.0"> 
     **** 
     </comprobanteRetencion> 
    ]]> 
    </comprobante> 
+0

我刪除了標籤。這裏是解決方案:[Solution](http://stackoverflow.com/questions/31306682/org-xml-sax-saxexception-illegal-text-data-found-as-child-of/33043205#33043205) –

回答

0

我刪除了標籤CDATA。一旦我刪除了該標籤,我就可以正常處理xml文件。這裏是整個solution

1

只有自己知道的 「信息」 這個XML是什麼。至於XML解析器和模式而言,你的XML片段是完全等效於

<comprobante> 
    &lt;?xml version="1.0" encoding="UTF-8"?&gt; 
     &lt;comprobanteRetencion id="comprobante" version="1.0.0"&gt; 
     **** 
     &lt;/comprobanteRetencion&gt; 

    </comprobante> 

也就是說,CDATA標籤只是說:「不要在這裏把尖括號爲標記」的一種方式。

+0

然後,這意味着我無法映射或提取CDATA標籤中的內容? –

+1

我不知道Castor是否提供了任何解決方法,但總的來說,我不希望工具提供將CDATA視爲具有結構語義的機制的機制,因爲XML世界中的共識就是它沒有。 –