Solved

xml/xsl code not working

Posted on 2004-03-26
11
221 Views
Last Modified: 2011-09-20
Hi, below is a jsp file thats supposed to take an xml file and write it to an xsl file but I dont think its working, am I missing anything?, thanks.

<%@ page import = "java.io.*"%>
<%@ page import = "org.w3c.dom.*"%>
<%@ page import = "org.xml.sax.*"%>
<%@ page import = "javax.xml.parsers.*"%>
<%@ page import = "javax.xml.transform.*"%>
<%@ page import = "javax.xml.transform.dom.*"%>
<%@ page import = "javax.xml.transform.stream.*"%>
   
    <%

        // This method applies the xslFilename to inFilename and writes
        // the output to outFilename.
        String inFilename = "C:\\Documents and Settings\\Adrian Ron\\Start Menu\\Programs\\Apache Tomcat 4.1\\xmlfile.xml";
        String xslFilename = "xsl";
       // Writer out;
       
            try {
                // Create transformer factory
                TransformerFactory factory = TransformerFactory.newInstance();
   
                // Use the factory to create a template containing the xsl file
                Templates template = factory.newTemplates(new StreamSource(
                    new FileInputStream(xslFilename)));
   
                // Use the template to create a transformer
                Transformer xformer = template.newTransformer();
   
                // Prepare the input and output files
                Source source = new StreamSource(new FileInputStream(inFilename));
                Result result = new StreamResult(out);
   
                // Apply the xsl file to the source file and write the result to the output file
                xformer.transform(source, result);
            } catch (FileNotFoundException e) {
            } catch (TransformerConfigurationException e) {
                // An error occurred in the XSL file
            } catch (TransformerException e) {
                // An error occurred while applying the XSL file
                // Get location of error in input file
                SourceLocator locator = e.getLocator();
                int col = locator.getColumnNumber();
                int line = locator.getLineNumber();
                String publicId = locator.getPublicId();
                String systemId = locator.getSystemId();
            }
    %>

0
Comment
Question by:Ronayne
  • 6
  • 5
11 Comments
 
LVL 92

Expert Comment

by:objects
ID: 10691123
what gets displayed?
0
 
LVL 92

Expert Comment

by:objects
ID: 10691135
i'd suggest not ignoring any exceptions so you know if something has gone wrong.

e.printStackTrace();
out.println("Error: "+e);
0
 

Author Comment

by:Ronayne
ID: 10691448

nothing get displayed, just a blank page
0
The Eight Noble Truths of Backup and Recovery

How can IT departments tackle the challenges of a Big Data world? This white paper provides a roadmap to success and helps companies ensure that all their data is safe and secure, no matter if it resides on-premise with physical or virtual machines or in the cloud.

 

Author Comment

by:Ronayne
ID: 10691476

what I want to do is open the xml document with a stylesheel and display it as an html document.
0
 
LVL 92

Expert Comment

by:objects
ID: 10691531
check those exceptions, i'm guessing one is getting thrown
if so, the exception should give u an indication of what the problem is.

perhaps it's not finding the xsl file.
0
 

Author Comment

by:Ronayne
ID: 10691666

Well I did'nt create an xsl file, could you guide me as to what I need to do so I can open the xml document with a stylesheel and display it as an html document?
0
 

Author Comment

by:Ronayne
ID: 10691778
Im trying to work off thsi tutorial which I think is sufficient for what I want to do.

http://www.xmlscript.org/docs/Tutorial.2.2.html

What do you think?
0
 
LVL 92

Accepted Solution

by:
objects earned 50 total points
ID: 10691885
0
 

Author Comment

by:Ronayne
ID: 10692017
Thanks for that, im working off this: http://www.w3schools.com/xsl/xsl_transformation.asp. The server will be accessing the xml file on the clients computer and transforming it to html on the clients computer. Here is what I came up with. Can I just put the xml style sheet in a tomcat directory, is this line ok: <?xml-stylesheet type="text/xsl" href="localhost:8080\cdcatalog.xsl"?>. Ill increase the points.

//the xml document
<?xml version='1.0' encoding='ISO-8859-1'?>
<?xml-stylesheet type="text/xsl" href="localhost:8080\cdcatalog.xsl"?>
<Table>
<Product>
<Name>xml</Name>
<Type>isa </Type>
<Amount>file</Amount>
</Product>
</Table>

////the style sheet
<?xml version="1.0" encoding="ISO-8859-1"?>

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
    <h2>My XML File</h2>
    <table border="1">
    <tr bgcolor="#9acd32">
      <th align="left">Name</th>
      <th align="left">Type</th>
  <th align="left">Amt</th>
    </tr>
    <xsl:for-each select="Table/Product">
    <tr>
      <td><xsl:value-of select="Name"/></td>
      <td><xsl:value-of select="Title"/></td>
      <td><xsl:value-of select="Amount"/></td>
    </tr>
    </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>
0
 

Author Comment

by:Ronayne
ID: 10692160

its ok, that tutorial you posted really helped me, thanks a million
0
 
LVL 92

Expert Comment

by:objects
ID: 10692898
0

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Java Options in Zimbra Server 2 52
map related example 6 48
MySQL  on Tomcat 8 45
runtime exception 2 28
After being asked a question last year, I went into one of my moods where I did some research and code just for the fun and learning of it all.  Subsequently, from this journey, I put together this article on "Range Searching Using Visual Basic.NET …
By the end of 1980s, object oriented programming using languages like C++, Simula69 and ObjectPascal gained momentum. It looked like programmers finally found the perfect language. C++ successfully combined the object oriented principles of Simula w…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
This video teaches viewers about errors in exception handling.

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question