2012-09-26 29 views
1

我想使用JAXB將以下內容解組爲'Tag'對象。這是客戶端如何將結果傳遞給我 -使用JAXB Unmarhshalling一個棘手的CDATA元素

<Tag type="a"> 
    <![CDATA[html text here]]> 
</Tag> 

注意CDATA包裹直接在「標籤」,其具有的屬性「類型」它。

我班如下:

@XmlRootElement(name = "Tag") 
public class Tag { 

private String type; 
private String tag; 

public String getTag() { 
    return tag; 
} 

@XmlCDATA 
public void setTag(String tag) { 
    this.tag = tag; 
} 

public String getType() { 
    return type; 
} 

@XmlAttribute 
public void setType(String type) { 
    this.type = type; 
} 

} 

我不認爲這是正確的方式,當我解組預期,標籤對象中填充了「型」,但CDATA價值沒有得到填充成'標籤'。

有什麼想法?

回答

1

您可以將@XmlValue註釋添加到標記屬性。

+0

太棒了!做到了! (呵呵,這樣簡單的解決方案) – hese

+1

我把它叫做棘手:) – hese