View Javadoc
1   package civitas.common;
2   
3   import java.io.StringWriter;
4   
5   import org.springframework.stereotype.Controller;
6   
7   import jakarta.xml.bind.JAXBContext;
8   import jakarta.xml.bind.JAXBException;
9   import jakarta.xml.bind.Marshaller;
10  
11  @Controller
12  public class ConvertToXml {
13  
14  	public <T> String apply(final T that) throws JAXBException {
15  		JAXBContext context = JAXBContext.newInstance(that.getClass());
16  
17  		Marshaller marshaller = context.createMarshaller();
18  		marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
19  		marshaller.setProperty(Marshaller.JAXB_FRAGMENT, false);
20  		marshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8");
21  
22  		StringWriter writer = new StringWriter();
23  		marshaller.marshal(that, writer);
24  		return writer.toString();
25  	}
26  }