4
我正在閱讀一些XML數據(如果您熟悉FXG文件)。數據如何讓JAXB中的unmarshaller忽略XML根元素名稱?
部分已改變標籤名稱:
<varying_name1 scaleX="1.0046692" x="177.4" y="74.2"/>
<varying_name2 scaleX="1.0031128" x="171.9" y="118.9"/>
我創建了一個名爲變換到不同的標籤名段內代表了數據類。在我的JAXB類來保存數據,我有:
@XmlAnyElement(lax=true)
@XmlJavaTypeAdapter(TransformAdapter.class)
protected List<Transform> transforms;
在我的適配器,我試圖解組數據:
JAXBContext context = JAXBContext.newInstance(Transform.class);
Unmarshaller unmarshaller = context.createUnmarshaller();
Transform result = (Transform) unmarshaller.unmarshal(v);
但是,我的代碼在這裏拋出一個異常,因爲在根名字我元素變化。這不是一個常數。我得到:
unexpected element (uri:"http://ns.adobe.com/fxg/2008", local:"m6_mc"). Expected elements are (none)
我該如何才能解開我的數據,就好像根元素具有預期的名稱一樣?
我不明白爲什麼第二次提供類參數告訴它忽略根元素,但是,它的工作原理!我應該複製你的例子,我更密切地下載了一下。 – Joe
@Joe - 我已經擴大了我的答案,希望這有助於澄清事情。 –
謝謝,Blaise! – Joe