1 package com.atlassian.plugins.rest.common.json;
2
3 import com.sun.jersey.api.json.JSONJAXBContext;
4 import com.sun.jersey.json.impl.JSONMarshaller;
5
6 import java.io.StringWriter;
7 import javax.xml.bind.JAXBException;
8
9 public class DefaultJaxbJsonMarshaller implements JaxbJsonMarshaller
10 {
11 public String marshal(final Object jaxbBean, final Class... jaxbClasses) throws JAXBException
12 {
13 final JsonJaxbContextFactory contextFaxtory = new DefaultJsonJaxbContextFactory();
14 final JSONJAXBContext jsonjaxbContext = contextFaxtory.createContext(jaxbClasses);
15 final StringWriter out = new StringWriter();
16 final JSONMarshaller marshaller = (JSONMarshaller) jsonjaxbContext.createMarshaller();
17 marshaller.setJsonEnabled(true);
18 marshaller.marshal(jaxbBean, out);
19 return out.toString();
20 }
21 }