import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.math.BigDecimal;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
import javax.xml.transform.stream.*;
import java.io.StringReader;
import java.io.StringWriter;
import com.sam.util.emp.*;
public class EmpService {
public String GetEmployees()
{
StringWriter sOut=new StringWriter();
try {
// create a JAXBContext capable of handling classes generated into
JAXBContext jc=
JAXBContext.newInstance("com.sam.util.emp" );
Unmarshaller u= jc.createUnmarshaller();
StringBuffer xmlStr=new StringBuffer
("<Employees><Employee><FirstName></FirstName>
<MiddleName></MiddleName><LastName></LastName><SSN>
</SSN></Employee><Version></Version></Employees>");
Employees emps=(Employees)u.unmarshal(
new StreamSource(new StringReader(
xmlStr.toString())));;
emps.getEmployee().clear();
Employee emp=new com.sam.util.emp.impl.EmployeeImpl();
emp.setFirstName("John");
emp.setMiddleName("");
emp.setLastName("Bob");
emp.setSSN("555-111");
emps.getEmployee().add(emp);
emp=new com.sam.util.emp.impl.EmployeeImpl();
emp.setFirstName("Tom");
emp.setMiddleName("");
emp.setLastName("Bill");
emp.setSSN("567-281");
emps.getEmployee().add(emp);
Marshaller m = jc.createMarshaller();
m.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT,
Boolean.TRUE );
StreamResult result = new StreamResult(sOut);
m.marshal(emps,result);
//System.out.println(sOut.toString());
} catch( JAXBException je ) {
je.printStackTrace();
return "";
}
return sOut.toString();
}
} |