1
22
23 package com.liferay.portlet.xslcontent.util;
24
25 import com.liferay.portal.kernel.io.unsync.UnsyncByteArrayOutputStream;
26 import com.liferay.portal.kernel.io.unsync.UnsyncStringReader;
27 import com.liferay.portal.kernel.util.HttpUtil;
28
29 import java.io.IOException;
30
31 import java.net.URL;
32
33 import javax.xml.transform.Transformer;
34 import javax.xml.transform.TransformerException;
35 import javax.xml.transform.TransformerFactory;
36 import javax.xml.transform.stream.StreamResult;
37 import javax.xml.transform.stream.StreamSource;
38
39
44 public class XSLContentUtil {
45
46 public static String DEFAULT_XML_URL =
47 "@portal_url@/html/portlet/xsl_content/example.xml";
48
49 public static String DEFAULT_XSL_URL =
50 "@portal_url@/html/portlet/xsl_content/example.xsl";
51
52 public static String transform(URL xmlURL, URL xslURL)
53 throws IOException, TransformerException {
54
55 String xml = HttpUtil.URLtoString(xmlURL);
56 String xsl = HttpUtil.URLtoString(xslURL);
57
58 StreamSource xmlSource = new StreamSource(new UnsyncStringReader(xml));
59 StreamSource xslSource = new StreamSource(new UnsyncStringReader(xsl));
60
61 TransformerFactory transformerFactory =
62 TransformerFactory.newInstance();
63
64 Transformer transformer =
65 transformerFactory.newTransformer(xslSource);
66
67 UnsyncByteArrayOutputStream unsyncByteArrayOutputStream =
68 new UnsyncByteArrayOutputStream();
69
70 transformer.transform(
71 xmlSource, new StreamResult(unsyncByteArrayOutputStream));
72
73 return unsyncByteArrayOutputStream.toString();
74 }
75
76 }