• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 233
  • Last Modified:

xml/xsl code not working

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
Ronayne
Asked:
Ronayne
  • 6
  • 5
1 Solution
 
objectsCommented:
what gets displayed?
0
 
objectsCommented:
i'd suggest not ignoring any exceptions so you know if something has gone wrong.

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

nothing get displayed, just a blank page
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
RonayneAuthor Commented:

what I want to do is open the xml document with a stylesheel and display it as an html document.
0
 
objectsCommented:
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
 
RonayneAuthor Commented:

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
 
RonayneAuthor Commented:
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
 
RonayneAuthor Commented:
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
 
RonayneAuthor Commented:

its ok, that tutorial you posted really helped me, thanks a million
0
 
objectsCommented:
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

  • 6
  • 5
Tackle projects and never again get stuck behind a technical roadblock.
Join Now