Java Model
I generated the default Java model from your XML Schema using XJC.
Demo Code
Demo
The demo code below populates the object model (setting the centralCaseID
property to null
) and marshals it to XML.
import javax.xml.bind.*;
public class Demo {
public static void main(String[] args) throws Exception {
JAXBContext jc = JAXBContext.newInstance("emp");
ObjectFactory objectFactory = new ObjectFactory();
Root root = objectFactory.createRoot();
CaseDetail caseDetail = objectFactory.createCaseDetail();
caseDetail.setCentralCaseID(null);
root.getCaseDetail().add(caseDetail);
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.marshal(root, System.out);
}
}
Output
Below is the output from running the demo code.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<root xmlns="emp">
<Case_Detail/>
</root>
Items to note:
A namespace declaration was written out. This is because the
@XmlSchema
annotation is present on thepackage-info
class that maps the namespace qualification (see: http://blog.bdoughan.com/2010/08/jaxb-namespaces.html).@javax.xml.bind.annotation.XmlSchema( namespace = "emp", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package emp;
The element corresponding to the
centralCaseID
property does not appear in the XML. This is the default behaviour regardingnull
properties (see: http://blog.bdoughan.com/2012/04/binding-to-json-xml-handling-null.html).