2010-06-03 99 views
1

我有一個模仿表的JPA實體類。事情是這樣的:JAXB中的XML字符串

@XmlType(name="MyClassElementType") 
public class MyClass { 
    String name; 
    String xmlDesc; 

    public MyClass() {} 

    @XmlElement 
    String getName() { return name; } 
    void setName(String name) { this.name = name; } 

    @XmlElement 
    String getXmlDesc() { return xmlDesc; } 
    void setXmlDesc(String xmlDesc) { this.xmlDesc = xmlDesc; } 
} 

在新澤西州的REST調用得到我想要返回這個類:

@Get 
@Produces("application/xml") 
public MyClass get() { 

    return myClass; 
} 

現在我期待已XML字符串(xmlStr)如要返回,但澤西島/ JAXB逃脫它...

所以無論如何圍繞這?

回答

3

JAXB無法知道xmlDesc包含一個XML字符串,它可能是任何東西,所以它轉義它。

如果要將任意XML存儲在JAXB對象模型中,則需要將其存儲爲org.w3c.dom.Element的實例。 JAXB應該根據需要將其轉換爲XML。

+0

這麼想......謝謝你回答。讓我去嘗試一下... – OOO 2010-06-07 07:28:16

+2

@OOO:你需要使用'@ XmlAnyElement'而不是'@ XmlElement' – skaffman 2010-06-07 08:29:14