如何使用Java中的XML Bean创建典型的XML标头?

时间:2013-07-09 07:31:17

标签: java xml xmlbeans

我想用XML Bean创建一个特定的xml文档。所以我得到了一个像这样的可接受的结果:

<Req accessId="1234" ver="1.1">
   <Loc id="007" maxNr="5">
      <Altitude x="123" y="987" type="ABC"/>
   </Loc>
</Req>

现在需要XML Documents的典型XML Header,但我没有找到使用XMLBeans的解决方案。这就是我需要的结果:

<?xml version="1.0" encoding="UTF-8"?> 
<Req accessId="1234" ver="1.1">
   <Loc id="007" maxNr="5">
      <Altitude x="123" y="987" type="ABC"/>
   </Loc>
</Req>

Java代码,它在控制台上创建XMl结果:

    XmlOptions options = new XmlOptions();

    Map<String, String> substNameSpaces = new HashMap<String, String>();
    substNameSpaces.put("ext", null);

    options.setSavePrettyPrint();
    options.setLoadSubstituteNamespaces(substNameSpaces);
    options.setUseDefaultNamespace();
    options.setSaveOuter();

    // ReqDocument
    ReqDocument doc = ReqDocument.Factory.newInstance(options);

    // Req
    Req req = doc.addNewReq();
    req.setAccessId("1234");        
    req.setVer("1.1");

    // Loc
    Loc locValReq = req.addNewLoc();
    loc.setId("007");
    loc.setMaxNr(5);

    // Altitude
    Location location = loc.addNewAltitude();
    location.setX(123);
    location.setY(987);
    location.setType("ABC");

    // Outline
    System.out.println(req.xmlText(options));        

有人能帮助我吗?

0 个答案:

没有答案