Java XML JAXB Serialize serializeToString(Object obj)

Here you can find the source of serializeToString(Object obj)

Description

serialize To String

License

EUPL

Parameter

Parameter Description
obj a parameter

Exception

Parameter Description
JAXBException an exception

Declaration

public static String serializeToString(Object obj) throws JAXBException 

Method Source Code

//package com.java2s;
/*/*from   w w  w .j  a v  a  2  s  . c om*/
 * Copyright 2015, Supreme Court Republic of Slovenia
 * 
 * Licensed under the EUPL, Version 1.1 or ? as soon they will be approved by the European
 * Commission - subsequent versions of the EUPL (the "Licence"); You may not use this work except in
 * compliance with the Licence. You may obtain a copy of the Licence at:
 * 
 * https://joinup.ec.europa.eu/software/page/eupl
 * 
 * Unless required by applicable law or agreed to in writing, software distributed under the Licence
 * is distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied. See the Licence for the specific language governing permissions and limitations under
 * the Licence.
 */

import java.io.StringWriter;

import static java.lang.Boolean.TRUE;

import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import static javax.xml.bind.Marshaller.JAXB_FORMATTED_OUTPUT;
import static javax.xml.bind.Marshaller.JAXB_FRAGMENT;

import org.w3c.dom.Element;
import org.w3c.dom.ls.DOMImplementationLS;

import org.w3c.dom.ls.LSSerializer;

public class Main {
    /**
     *
     * @param obj
     * @return
     * @throws JAXBException
     */
    public static String serializeToString(Object obj) throws JAXBException {
        java.io.StringWriter sw = new StringWriter();
        final Marshaller m = JAXBContext.newInstance(obj.getClass()).createMarshaller();
        m.setProperty(JAXB_FRAGMENT, TRUE);
        m.setProperty(JAXB_FORMATTED_OUTPUT, TRUE);
        m.marshal(obj, sw);
        return sw.toString();
    }

    /**
     *
     * @param rootElement
     * @param setXmlDecl
     * @return
     */
    public static String serializeToString(Element rootElement, boolean setXmlDecl) {
        DOMImplementationLS lsImpl = (DOMImplementationLS) rootElement.getOwnerDocument().getImplementation()
                .getFeature("LS", "3.0");
        LSSerializer serializer = lsImpl.createLSSerializer();
        serializer.getDomConfig().setParameter("xml-declaration", setXmlDecl); // set it to false to get
        // String without
        // xml-declaration
        return serializer.writeToString(rootElement);
    }
}

Related

  1. serialize(T object, Class objectClass, OutputStream resultStream)
  2. serialize(T object, Path path)
  3. serializeFile(String path, Object o)
  4. serializeToFile(Class clazz, T object, String outputFile)
  5. serializeToSTD(Object obj)
  6. serializeToString(Object obj)
  7. serializeToXmlFile(T object, String fileName)
  8. xmlSerialize(String filename, T obj)