Jay,
I just looked again at my Environment Variables under the Advanced tab of my System Properties window.
You are correct; it is the "Path" var that says "%JAVA_HOME%\bin;...<more
paths>".
Franklin
Jay Burgess wrote:
First, I assume you mean CLASSPATH and /lib, or PATH and /bin, but not CLASSPATH
and /bin?
Second, your situation has me puzzled. Mark's answer appears correct, as
"unknown protocol: c" is typically the "C:\" of a Windows filesystem path. And
checking the documentation, StreamSource requires a URI, so a windows filesystem
path won't work.
However...my code does something very similar, and it works. The only difference
is that I'm doing it for a StreamResult, not a StreamSource:
String root = getServletContext().getRealPath("");
String xmlFileName = root + File.separator + "WEB-INF" +
File.separator + "TestData.xml";
TransformerFactory.newInstance().newTransformer().transform(
new DOMSource(buffer),
new StreamResult(xmlFileName)); // DOM into XML
I just threw in a quick println(), and "xmlFileName" is equal to
"C:\tomcat-5.0.19\webapps\TestApp\WEB-INF\TestData.xml".
Can anyone explain why mine works and Franklin's fails? Maybe I'm missing
something obvious.
Jay
| Jay Burgess [Vertical Technology Group]
| "Essential Technology Links"
| http://www.vtgroup.com/
-----Original Message-----
From: Mark Thomas [mailto:[EMAIL PROTECTED]
Sent: Thursday, August 25, 2005 4:21 PM
To: Tomcat Users List
Subject: Re: Malformed URL Exception: unknown protocol: c
I assume becuase the url you pass it starts c:\ as that is the start
of the XML_WORK_PATH. You need to prefix it with file:/// (or however
many slashes you need to get this to work in windows).
Mark
Franklin Phan wrote:
I use Windows XP Pro. My JAVA_HOME environment variable points to
c:\j2sdk1.4.2_05. The CLASSPATH is set to have as the first element
"%JAVA_HOME%\bin". I've written an XSL Transform servlet that makes use
of the package javax.xml.transform. Why do I get the following error:
javax.servlet.ServletException:
javax.xml.transform.TransformerConfigurationException:
javax.xml.transform.TransformerException:
java.net.MalformedURLException: unknown protocol: c
The four lines above actually appear altogether in one line. And the
error appears to be due to the following piece of code where I'm trying
to get the path to a folder on the local drive to access a file:
String XML_WORK_PATH = "/WEB-INF/work_xml";
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer =
tFactory.newTransformer(new
javax.xml.transform.stream.StreamSource(getServletContext().getRealPath(XML_WORK_PATH)
+ "\\" + xslParam)); //xslParam is an XSL file name
The Malformed URL Exception does not occur on another machine running
Windows XP Server.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]