List of usage examples for javax.xml.transform TransformerFactory newInstance
public static TransformerFactory newInstance() throws TransformerFactoryConfigurationError
From source file:Main.java
/** * Serialize an XML document into a String (for debug purpose only!). the * returned String could contains an error message instead if a problem as * occurred during the serialization. This method is intended for debug / * trace purpose because you really don't need to serialize XML at all in * your code unless your planing to output it to a file. In this case, use * {@link XmlHelper#writeXmlToFile(Document, File)} instead. *//*from w w w . j a v a 2 s . c om*/ public static String dumpXml(Document document) { TransformerFactory factory = TransformerFactory.newInstance(); try { Transformer transformer = factory.newTransformer(); transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); StringWriter writer = new StringWriter(); transformer.transform(new DOMSource(document), new StreamResult(writer)); return writer.getBuffer().toString(); } catch (TransformerException e) { return "XML dump failed: " + e.getMessage(); } }
From source file:Main.java
private static String getStringFromDocument(Node doc) { try {//w w w . j a v a 2 s . co m DOMSource domSource = new DOMSource(doc); StringWriter writer = new StringWriter(); StreamResult result = new StreamResult(writer); TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer = tf.newTransformer(); transformer.transform(domSource, result); return writer.toString(); } catch (TransformerException ex) { ex.printStackTrace(); return null; } }
From source file:Main.java
/** * Print XML in "pretty" format.//from ww w.ja v a 2 s .c o m * * @param in an XML input stream * @param out where the result will go * @param indent the number of characters to indent */ public static void prettyPrintXml(InputStream in, OutputStream out, int indent) { DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); TransformerFactory tfactory = TransformerFactory.newInstance(); // set indent spaces on factory // tfactory.setAttribute("indent-number", new Integer(indent)); try { DocumentBuilder docBuilder = dbFactory.newDocumentBuilder(); Document doc = docBuilder.parse(in); Transformer serializer = tfactory.newTransformer(); // turn on indenting on transformer (serializer) serializer.setOutputProperty(OutputKeys.INDENT, "yes"); serializer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", // String.valueOf(indent)); "2"); serializer.transform(new DOMSource(doc), new StreamResult(new OutputStreamWriter(out, "utf-8"))); } catch (Exception e) { // this is fatal, just dump stack and throw runtime exception e.printStackTrace(); throw new RuntimeException(e); } }
From source file:Main.java
public static void sendXml(String result, int operationN) throws Exception { String filepath = "file.xml"; DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.parse(filepath); Node tonode = doc.getElementsByTagName("command").item(0); Element res = doc.createElement("result"); res.setTextContent(result);/*from ww w .j a v a 2 s. c om*/ tonode.appendChild(res); TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(doc); StreamResult result1 = new StreamResult(new File("file2.xml")); StreamResult result3 = new StreamResult(System.out); transformer.transform(source, result1); }
From source file:Main.java
public static void writeDocument(Document document, File directoryToWriteTo, String fileName) { // Prepare the DOM document for writing Source source = new DOMSource(document); // Prepare the output file File file = new File(directoryToWriteTo, fileName); Result result = new StreamResult(file); // Write the DOM document to the file try {//from ww w. j a va2s . c o m Transformer transformer = TransformerFactory.newInstance().newTransformer(); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); transformer.transform(source, result); } catch (TransformerFactoryConfigurationError | TransformerException e) { throw new IllegalStateException(e); } }
From source file:Main.java
/** * Save the XML document to a file./*www . java 2s.c om*/ * * @param doc The XML document to save. * @param file The file to save the document to. * @param encoding The encoding to save the file as. * * @throws TransformerException If there is an error while saving the XML. */ public static void save(Document doc, String file, String encoding) throws TransformerException { try { Transformer transformer = TransformerFactory.newInstance().newTransformer(); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty(OutputKeys.ENCODING, encoding); transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); // initialize StreamResult with File object to save to file Result result = new StreamResult(new File(file)); DOMSource source = new DOMSource(doc); transformer.transform(source, result); } finally { } }
From source file:Main.java
/** * ***************************************** * Convert XML document to string/* ww w. j a v a 2 s. c o m*/ * ******************************************. * * @param xmlDocument the xml document * @return the string * @throws IOException Signals that an I/O exception has occurred. * @throws TransformerException the transformer exception */ public static String converXmlDocToString(Document xmlDocument) throws IOException, TransformerException { String xmlString = ""; TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer = tf.newTransformer(); transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no"); transformer.setOutputProperty(OutputKeys.METHOD, "xml"); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); StringWriter writer = new StringWriter(); transformer.transform(new DOMSource(xmlDocument), new StreamResult(writer)); xmlString = writer.getBuffer().toString().replaceAll("\n|\r", ""); return xmlString; }
From source file:Main.java
/** a bit of boilerplate * @return shorthand for TransformerFactory.newInstance(); *//*from w ww . j a v a2 s. co m*/ public static TransformerFactory transformerFactory() throws TransformerFactoryConfigurationError { final TransformerFactory tf = TransformerFactory.newInstance(); return tf; }
From source file:Main.java
/** * @param xml//from ww w.ja v a 2 s. c o m */ public static void prettyPrint(String xml) { Source xmlInput = new StreamSource(new StringReader(xml)); StreamResult xmlOutput = new StreamResult(new StringWriter()); Transformer transformer = null; try { transformer = TransformerFactory.newInstance().newTransformer(); } catch (TransformerConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (TransformerFactoryConfigurationError e) { // TODO Auto-generated catch block e.printStackTrace(); } //transformer.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM, "testing.dtd"); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); try { transformer.transform(xmlInput, xmlOutput); } catch (TransformerException e) { // TODO Auto-generated catch block e.printStackTrace(); } String formattedxml = xmlOutput.getWriter().toString(); System.out.println(formattedxml); }
From source file:Main.java
/** * @param xml//from www . jav a 2 s . c om */ public static String prettyPrintToString(String xml) { Source xmlInput = new StreamSource(new StringReader(xml)); StreamResult xmlOutput = new StreamResult(new StringWriter()); Transformer transformer = null; try { transformer = TransformerFactory.newInstance().newTransformer(); } catch (TransformerConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (TransformerFactoryConfigurationError e) { // TODO Auto-generated catch block e.printStackTrace(); } //transformer.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM, "testing.dtd"); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); try { transformer.transform(xmlInput, xmlOutput); } catch (TransformerException e) { // TODO Auto-generated catch block e.printStackTrace(); } String formattedxml = xmlOutput.getWriter().toString(); return formattedxml; }