Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
/*
 * 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.ByteArrayInputStream;

import java.io.File;
import java.io.FileInputStream;

import java.io.IOException;
import java.io.InputStream;

import javax.xml.bind.JAXBException;

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

import javax.xml.transform.Result;

import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMResult;
import javax.xml.transform.dom.DOMSource;

import javax.xml.transform.stream.StreamSource;

import org.w3c.dom.Document;
import org.w3c.dom.Element;

import org.xml.sax.SAXException;

public class Main {
    /**
     *
     * @param xmlIS
     * @return
     * @throws IOException
     * @throws ParserConfigurationException
     * @throws SAXException
     */
    public static Document deserializeToDom(InputStream xmlIS)
            throws IOException, ParserConfigurationException, SAXException {
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

        factory.setNamespaceAware(true);
        DocumentBuilder builder = factory.newDocumentBuilder();

        return builder.parse(xmlIS);
    }

    /**
     *
     * @param xmlFile
     * @return
     * @throws IOException
     * @throws ParserConfigurationException
     * @throws SAXException
     */
    public static Document deserializeToDom(File xmlFile)
            throws IOException, ParserConfigurationException, SAXException {
        Document doc = null;
        try (FileInputStream fis = new FileInputStream(xmlFile)) {
            doc = deserializeToDom(fis);
        }
        return doc;
    }

    /**
     *
     * @param xml
     * @return
     * @throws IOException
     * @throws ParserConfigurationException
     * @throws SAXException
     */
    public static Document deserializeToDom(String xml)
            throws IOException, ParserConfigurationException, SAXException {
        return deserializeToDom(new ByteArrayInputStream(xml.getBytes()));
    }

    /**
     *
     * @param source
     * @param xsltSource
     * @return
     * @throws TransformerConfigurationException
     * @throws JAXBException
     * @throws TransformerException
     * @throws ParserConfigurationException
     * @throws SAXException
     * @throws IOException
     */
    public static synchronized Document deserializeToDom(InputStream source, InputStream xsltSource)
            throws TransformerConfigurationException, JAXBException, TransformerException,
            ParserConfigurationException, SAXException, IOException {
        Document obj;
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        if (xsltSource != null) {
            TransformerFactory factory = TransformerFactory.newInstance();
            Transformer transformer = factory.newTransformer(new StreamSource(xsltSource));
            obj = dbf.newDocumentBuilder().newDocument();
            Result result = new DOMResult(obj);
            transformer.transform(new StreamSource(source), result);
        } else {
            obj = dbf.newDocumentBuilder().parse(source);

        }
        return obj;
    }

    /**
     *
     * @param source
     * @param xsltSource
     * @return
     * @throws TransformerConfigurationException
     * @throws JAXBException
     * @throws TransformerException
     * @throws ParserConfigurationException
     * @throws SAXException
     * @throws IOException
     */
    public static synchronized Document transform(Element source, InputStream xsltSource)
            throws TransformerConfigurationException, JAXBException, TransformerException,
            ParserConfigurationException, SAXException, IOException {
        Document obj = null;
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        if (xsltSource != null) {
            TransformerFactory factory = TransformerFactory.newInstance();
            Transformer transformer;
            transformer = factory.newTransformer(new StreamSource(xsltSource));
            obj = dbf.newDocumentBuilder().newDocument();
            Result result = new DOMResult(obj);
            transformer.transform(new DOMSource(source), result);
        }
        return obj;
    }
}