2014-03-05 98 views
0

我使用此域名類別:Grails的JAXB元素列表爲空

@XmlRootElement(name="Target") 
@XmlAccessorType(XmlAccessType.NONE) 
class TargetElement { 

    static constraints = { 
     testPurpose() 
    } 

    @XmlAttribute(name="TestPurpose") 
    String testPurpose 

    // instead of bellow in comment use this 
    @XmlElementWrapper(name = "Bag") 
    @XmlElement(name="Child") 
    List<Child> bag= new ArrayList<Child>() 
    // 1..n Child 
    static hasMany = [child:Child] 
} 

如果我想補充兒童ELEM,我用

​​

,但我得到了list == null袋。

爲什麼我的列表爲空?它正在爲另一個項目工作,只有名稱正在改變。可能是我的眼睛失去了一些東西......

回答

0

對於誰得到了同樣的煩惱的人:具有@XmlElementWrapper值(袋)爲空在我的Bootstrap.groovy.I 已經宣佈:

ArrayList<Child> bag = new ArrayList<Child>() 
bag.add(child1) 
bag.add(child2) 
targetElement.getBag().addAll(bag) 

我也遇到了GROM延遲加載和JAXB的另一個問題。檢查嵌套對象retreived: 如:

static mapping = { 
    nested lazy: false 
} 

希望這將有助於