Java XML Document from String getXMLDocument(final String xml)

Here you can find the source of getXMLDocument(final String xml)

Description

Parse string with XML content to org.w3c.dom.Document .

License

Apache License

Parameter

Parameter Description
xml string with XML content

Exception

Parameter Description
SAXException if any parse errors occur

Return

Document

Declaration

public static Document getXMLDocument(final String xml) throws SAXException 

Method Source Code


//package com.java2s;
/*//from   w w  w.  ja v  a  2s. co  m
 * Copyright 2007-2012 AjaxTags-Team
 *
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */

import java.io.IOException;
import java.io.StringReader;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;

import org.xml.sax.InputSource;
import org.xml.sax.SAXException;

public class Main {
    /** DocumentBuilderFactory. */
    private static final ThreadLocal<DocumentBuilderFactory> DOC_FACTORY = new ThreadLocal<DocumentBuilderFactory>() {
        @Override
        protected DocumentBuilderFactory initialValue() {
            final DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            dbf.setValidating(false);
            dbf.setIgnoringElementContentWhitespace(true);
            return dbf;
        }
    };

    /**
     * Parse string with XML content to {@link org.w3c.dom.Document}.
     *
     * @param xml
     *            string with XML content
     * @return Document
     * @throws SAXException
     *             if any parse errors occur
     */
    public static Document getXMLDocument(final String xml) throws SAXException {
        try {
            return getNewDocumentBuilder().parse(new InputSource(new StringReader(xml)));
        } catch (IOException e) {
            throw new SAXException(e);
        } catch (ParserConfigurationException e) {
            throw new SAXException(e);
        }
    }

    /**
     * @return DocumentBuilder
     * @throws ParserConfigurationException
     *             if a DocumentBuilder cannot be created which satisfies the configuration
     *             requested
     */
    private static DocumentBuilder getNewDocumentBuilder() throws ParserConfigurationException {
        return DOC_FACTORY.get().newDocumentBuilder();
    }
}

Related

  1. getDocumentFromString(String xml)
  2. getDocumentFromString(String xml)
  3. getDocumentFromString(String xmlString)
  4. getDocumentFromString(String xmlString)
  5. getXmlDocument(final String container)
  6. loadDocument(String documentContent)
  7. loadDocument(String xmlString)
  8. loadXml(String xml)
  9. loadXMLFrom(String xml)