我正在尝试创建一个简单的JAXB程序并将该对象写到xml文件中,但是它没有创建任何输出-我正在粘贴示例代码和输出-
代码-
ObjectFactory fct = new ObjectFactory();
ImportParams imp = fct.createImportParams();
FolderMaps fmaps = fct.createFolderMaps();
FolderMap fmap = fct.createFolderMap();
imp.setFolderMaps(fmaps);
fmap.setSourceFolderPath("test");
fmaps.getFolderMap().add(fmap);
System.out.println("Size is " + fmaps.getFolderMap().size());
System.out.println("Path is " + fmap.getSourceFolderPath());
ImportParams imp1 = new ImportParams();
imp1.setFolderMaps(fmaps);
JAXBContext ctx = null;
System.out.println("Writing JAXB objects");
try {
ctx = JAXBContext.newInstance("com.au");
System.out.println("Inside JAXB");
Marshaller marshaller = ctx.createMarshaller();
System.out.println("Marshal Started");
marshaller.marshal(fmaps, System.out);
marshaller.marshal(imp, System.out);
marshaller.marshal(fmap, System.out);
System.out.println("Marshal Completed");
marshaller.marshal(fmaps, new File ("C:\\Users\\test\\Desktop\\eclipse_workspace_64\\abcjaxb.xml"));
} catch (Exception e) {
// TODO: handle exception
}
输出为
Size is 1
Path is test
Writing JAXB objects
Inside JAXB
Marshal Started
Parameter file successfully created
在元帅启动后终止,并且未创建xml文件
答案 0 :(得分:0)
您需要将@XmlRootElement
添加到您的com.au.FolderMap
类中,例如
package com.au;
@XmlRootElement
public class FolderMap {
// ...
)