- Timestamp:
- 2002-10-11T13:31:49+13:00 (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl3/src/java/org/greenstone/gsdl3/util/XMLTransformer.java
r3362 r3451 29 29 import javax.xml.transform.stream.StreamResult; 30 30 31 import org.w3c.dom.Document; 31 32 import org.w3c.dom.Node; 33 import org.w3c.dom.NodeList; 32 34 33 35 // other java classes 34 36 import java.io.StringReader; 35 37 import java.io.StringWriter; 38 import java.io.File; 36 39 37 /** XML Converter - utitlity class for greenstone40 /** XMLTransformer - utility class for greenstone 38 41 * 39 * parses XML Strings into Documents, converts Nodes to Strings 40 * different parsers have different behaviour - can experiment in here 42 * transforms xml using xslt 41 43 * 42 44 * @author <a href="mailto:[email protected]">Katherine Don</a> … … 44 46 */ 45 47 public class XMLTransformer { 46 /** The transformer we're using */ 47 TransformerFactory t_factory_=null; 48 49 /** The transformer factory we're using */ 50 TransformerFactory t_factory_=null; 48 51 49 52 /** … … 57 60 public XMLTransformer() { 58 61 59 //System.out.println("system property="+System.getProperty("javax.xml.transform.TransformerFactory")); 60 62 // make sure we are using the xalan transformer 61 63 System.setProperty("javax.xml.transform.TransformerFactory", "org.apache.xalan.processor.TransformerFactoryImpl"); 62 64 try { … … 66 68 System.out.println("XMLTransformer() exception "+e.getMessage()); 67 69 } 68 69 //System.out.println("system property="+System.getProperty("javax.xml.transform.TransformerFactory"));70 70 } 71 71 … … 75 75 * Transform an XML document using a XSLT stylesheet 76 76 * 77 * @param stylesheet a n XSLT stylesheet77 * @param stylesheet a filename for an XSLT stylesheet 78 78 * @param xml_in the XML to be transformed 79 79 * @return the transformed XML … … 111 111 return output.toString(); 112 112 } catch (TransformerConfigurationException e) { 113 System.err.println("XMLTransformer: couldn't create transformer object: "+e.getMessageAndLocation()); 114 return ""; 115 } catch (TransformerException e) { 116 System.err.println("XMLTransformer: couldn't transform the source: " + e.getMessage()); 117 return ""; 118 } 119 } 120 121 122 public String transform(Document stylesheet, Node xml_in) { 123 124 try { 125 // Use the TransformerFactory to process the stylesheet Source and generate a Transformer. 126 Transformer transformer = t_factory_.newTransformer(new DOMSource(stylesheet)); 127 128 // Use the Transformer to transform an XML Source and send the output to a Result object. 129 StringWriter output = new StringWriter(); 130 131 transformer.transform(new DOMSource(xml_in), new StreamResult(output)); 132 return output.toString(); 133 } catch (TransformerConfigurationException e) { 113 134 System.err.println("XMLTransformer: couldn't create transformer object: "+e.getMessage()); 114 135 return ""; … … 118 139 } 119 140 } 141 142 120 143 } 121 144
Note:
See TracChangeset
for help on using the changeset viewer.