2011-08-18 43 views
3

我有從eclipseLink創建的實體。我試圖使用相同的對象來生成一個xml.I在一個類中有一個主鍵引用,我不知道我需要使用什麼註釋來獲得所需的XML。 我JPA到JAXB問題

public class ABC implements Serializable { 
private static final long serialVersionUID = 1L; 

@EmbeddedId 
private NamePK id; 

@XmlElement 
private String address1; 

    @XmlElement 
private String address1; 

... }

public class NamePK implements Serializable { 
//default serial version id, required for serializable classes. 
private static final long serialVersionUID = 1L; 

@Column(name="county") 
@XmlTransient 
private String county; 

@Column(name="NAME") 
@XmlElement 
private String name; 

....

}

在NamePk註釋應該如何讓我得到XML輸出as

<name>XXX</name> 
<Address1>YYY</Address1> 
<Address2>ZZZ</Address2> 

我是否需要標註在PK(職業等級和參考)兩者的水平

感謝

回答

4

注:我是EclipseLink JAXB (MOXy)鉛和JAXB 2(JSR-222)的成員專家組。

您可以使用的EclipseLink的莫西JAXB實現來實現:

ABC

您可以使用@XmlPath(".")有嵌入的ID元帥/在同一水平的解組爲您ABC類:

public class ABC implements Serializable { 

    private static final long serialVersionUID = 1L; 

    @EmbeddedId 
    @XmlPath(".") 
    private NamePK id; 

    @XmlElement 
    private String address1; 

    @XmlElement 
    private String address1; 

} 

更多信息

+0

這並沒有爲我工作。 PK仍然在他自己的水平。我需要在PK班上做些什麼嗎? –

+1

我的錯。沒有像在其他一些答案中指出的那樣使用jaxb.properties。 –

+0

但仍然,解組似乎並不奏效。需要進一步調查 –