代码之家  ›  专栏  ›  技术社区  ›  marklai

如何使用JAXB整理/取消标记MyBean集合

  •  6
  • marklai  · 技术社区  · 16 年前

    我有一个mybean注释

    @XmlRootElement
    public class MyBean ...
    

    编组/解编mybean,无问题,例如

    JAXBContext jaxbCtx = JAXBContext.newInstance(MyBean.class);
    Marshaller m = jaxbCtx.createMarshaller();
    m.marshal(myBean, writer);
    

    如何使用JAXB整理/取消标记集合或列表?

    我的尝试导致此错误:

    javax.xml.bind.MarshalException
     - with linked exception:
    [com.sun.istack.internal.SAXException2: unable to marshal type "java.util.ArrayList" as an element because it is missing an @XmlRootElement annotation]
        at com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:304)
        at com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:230)
    
    1 回复  |  直到 16 年前
        1
  •  3
  •   Community Mohan Dere    9 年前

    必须创建另一个类型的元素 MyBeanList 并使用它。与此相关的东西 Using JAXB to unmarshal/marshal a List<String>