I have my XML in a StringBuffer variable. Example, StringBuffer sb = new StringBuffer(); sb = sb.append("<node1><node2><node2><node3></node3></node1>") ;
This application is deployed on Tomcat. Inside the web application, I have my XSl. Can someone please let me know how can I apply this XSL to the above xml, so that I get the HTML result in a variable (which I'll send to the JSP to be displayed)
You can use core java APIs (i.e. JAXP) to achieve this.
What you need to do ultimately is call javax.xml.transform.Tranformer.transform( javax.xml.transform.Source, javax.xml.transform.Result)
Some other hints to solve the problem the way you want is the StringReader class and the StringWriter class.
Another hint to a different approach is that the implicit "out" object in a JSP is a Writer (more specifically a PrintWriter).
Google for some sample programs using some relevant keywords which will make your life a bit easier.
Also here is a link to the JSE 6 API. Check the javax.xml.tranform and javax.xml.tranform.stream packages.
Anjali S Sharma
Joined: Jun 29, 2005
Thank you I did this
but the problem seems to be this line StreamSource xsltSource = new StreamSource(new StringReader(xsl)); I have path to xsl in the variable "xsl". But I guess the paramter expects the XSL content. How do I get it here?