JAXB+MOXy:从元素的属性中提取列表?
我有一个包含JAXB+MOXy:从元素的属性中提取列表?,jaxb,eclipselink,moxy,Jaxb,Eclipselink,Moxy,我有一个包含 <jaxbBean file="A.groovy"/> <jaxbBean file="B.groovy"/> 但这与包含null的任何内容都不匹配 莫西能这么简单地做到这一点吗?或者我必须介绍一门额外的课程 我不想更改XML语法。您的映射看起来是正确的,下面是一个完整的示例。由于要注释该字段,请确保类上有@xmlacessortypexmlacesstype.field请参见: 域模型根 导入java.util.List; 导入javax
<jaxbBean file="A.groovy"/>
<jaxbBean file="B.groovy"/>
但这与包含null的任何内容都不匹配
莫西能这么简单地做到这一点吗?或者我必须介绍一门额外的课程
我不想更改XML语法。您的映射看起来是正确的,下面是一个完整的示例。由于要注释该字段,请确保类上有@xmlacessortypexmlacesstype.field请参见: 域模型根 导入java.util.List; 导入javax.xml.bind.annotation.*; 导入org.eclipse.persistence.oxm.annotations.XmlPath; @XmlRootElement @XmlAccessorTypeXmlAccessType.FIELD 公共类根{ @XmlPathjaxbBean/@文件 列出所有类别; } jaxb.properties 要将MOXy指定为JAXB JSR-222提供程序,您需要在与域模型相同的包中包含一个名为JAXB.properties的文件,该文件包含以下条目,请参见: 演示 导入java.io.File; 导入javax.xml.bind.*; 公开课演示{ 公共静态无效主字符串[]args引发异常{ JAXBContext jc=JAXBContext.newInstanceRoot.class; Unmarshaller Unmarshaller=jc.createUnmarshaller; 文件xml=newfilesrc/forum17104179/input.xml; Root=Root unmarshaller.unmarshalxml; Marshaller=jc.createMarshaller; marshaller.setPropertyMarshaller.JAXB_格式化的_输出,true; marshaller.marshallroot,System.out; } } input.xml/Output
@XmlPath("jaxbBean/@file")
List<String> jaxbBeansClasses;
javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory