xml -xsl transformation in java

R

raj

Hi,
i am doing an xsl transformation
i have my xml,xsl and the java class in same folder when i run this
code from java class its working fine but when use the same in a
webapplication deployed in tomcat i am getting the below error.

CODE:

StreamSource source = new StreamSource("abc.xml")
StreamSource stylesource = new StreamSource("abc.xsl");
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer(stylesource);
StreamResult result = new StreamResult(System.out);

StringWriter sw = new StringWriter();
transformer.transform(source, new StreamResult(sw));

String sReturn = sw.toString();


Exception:
ERROR: 'C:\Documents and Settings\hp.ln\Desktop\apache-
tomcat-6.0.16\bin\abc.xsl (The system cannot find the file specified)'
FATAL ERROR: 'Could not compile stylesheet'
javax.xml.transform.TransformerConfigurationException: Could not
compile stylesheet
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(Unknown
Source)
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(Unknown
Source)


pls anyone sort out my prob .Thanks in ADV---Raj
 
M

Mike Schilling

raj said:
Hi,
i am doing an xsl transformation
i have my xml,xsl and the java class in same folder when i run this
code from java class its working fine but when use the same in a
webapplication deployed in tomcat i am getting the below error.

CODE:

StreamSource source = new StreamSource("abc.xml")
StreamSource stylesource = new StreamSource("abc.xsl");
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer(stylesource);
StreamResult result = new StreamResult(System.out);

StringWriter sw = new StringWriter();
transformer.transform(source, new StreamResult(sw));

String sReturn = sw.toString();


Exception:
ERROR: 'C:\Documents and Settings\hp.ln\Desktop\apache-
tomcat-6.0.16\bin\abc.xsl (The system cannot find the file specified)'
FATAL ERROR: 'Could not compile stylesheet'
javax.xml.transform.TransformerConfigurationException: Could not
compile stylesheet
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(Unknown
Source)
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(Unknown
Source)


pls anyone sort out my prob .Thanks in ADV---Raj

Specifiying simply "abc.xsl" means "try to open the file abc.xsl in the
current default directory". It isn't in the webserver's default directory.
There are two ways to fix this:

1. Specify a fully qualified filename, if you know what directory abc.xsl
will live in.
2. Make abc.xsl a resource (that is, build it into one of your application's
jar files) and open it using ClassLoader.getResource[AsStream]() instead of
specifying a file name.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,968
Messages
2,570,154
Members
46,702
Latest member
LukasConde

Latest Threads

Top