2013-07-24 69 views
3

如何添加的xmlns到元素時,這樣的結果應該是像JAXB添加的xmlns到元素使用JAXB編組的Java對象時編組的Java

<R> 
    <A xmlns:p2="test" p2:type="type"> 
     some value 
    </A> 
</R> 

我的Java實體類是,例如:

@XmlRootElement 
public class R { 

    private String a; 

    public String getA() { 
     return a; 
    } 

    @XmlElement(name="A") 
    public void setA(String a) { 
     this.a = a; 
    } 
} 

試圖將名稱空間添加到XmlElement中,但結果不符合我的預期。請,任何幫助表示讚賞。

回答

3

在您的示例中,它是名稱空間限定的type屬性。您可以在@XmlAttribute註釋上爲其設置namespace參數。

ř

import javax.xml.bind.annotation.*; 

@XmlRootElement(name="R") 
@XmlAccessorType(XmlAccessType.FIELD) 
public class R { 

    @XmlElement(name="A") 
    private A a; 

} 

import javax.xml.bind.annotation.*; 

@XmlAccessorType(XmlAccessType.FIELD) 
public class A { 

    @XmlAttribute(namespace="test") 
    private String type; 

    @XmlValue 
    private String value; 

} 

更多信息

+1

謝謝!現在我明白如何創建它們了! –