KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > JSX > XSLTimport


1 /* (c) Brendan Macmillan 2002
2     Trial version only.
3   **/

4
5 package JSX;
6 import java.io.*;
7 import javax.xml.transform.*;
8 import javax.xml.transform.sax.*;
9 import javax.xml.transform.stream.*;
10
11
12 class XSLTimport {
13
14         //import: we transform first, then return pipe to JSX
15
public Reader preprocess(Reader in, Config cfg) throws IOException {
16
17     StreamSource sin = new StreamSource(in);
18
19     StringWriter pout = new StringWriter();
20     //PipedWriter pout = new PipedWriter();
21
//Reader pin = new PipedReader(pout); //the new place to read data from
22
StreamResult sout = new StreamResult(pout);
23
24     //transform:
25
try {
26         TransformerFactory tf = TransformerFactory.newInstance();
27         Transformer t = tf.newTransformer(new StreamSource(cfg.importFile));
28         t.transform(sin, sout);
29         } catch (javax.xml.transform.TransformerConfigurationException JavaDoc e) {
30             System.err.println("transformation config failed, using: "+ cfg.importFile);
31         } catch (javax.xml.transform.TransformerException JavaDoc e) {
32             System.err.println("transformation itself failed, using: "+ cfg.importFile);
33         }
34
35         Reader pin = new StringReader(pout.toString());
36
37         return pin;
38     }
39
40 }
41
Popular Tags