dleslie     01/03/20 09:03:23

  Modified:    java/samples/servlet XSLTServletWithParams.java
  Added:       java/samples/servlet fooparam.xml fooparam.xsl
                        UseStylesheetParamServlet.java
  Log:
  1. Added UseStylesheetParamServlet, submitted by
  Paul Campbell <[EMAIL PROTECTED]>.
  2. Following the example set by UseStylesheetParamServlet,
  I changed XSLTServletWithParams to use
  request.getParameter() rather than request.getParameterValues()
  
  Revision  Changes    Path
  1.3       +6 -8      xml-xalan/java/samples/servlet/XSLTServletWithParams.java
  
  Index: XSLTServletWithParams.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/java/samples/servlet/XSLTServletWithParams.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- XSLTServletWithParams.java        2001/03/07 18:22:09     1.2
  +++ XSLTServletWithParams.java        2001/03/20 17:03:19     1.3
  @@ -147,9 +147,8 @@
     {
          if (request != null) 
       { 
  -         String[] paramVals = request.getParameterValues(param); 
  -         if (paramVals != null) 
  -             return paramVals[0];
  +         String paramVal = request.getParameter(param); 
  +               return paramVal;
          }
          return null;
     }
  @@ -163,14 +162,13 @@
         String paramName = (String) paramNames.nextElement();
         try
         {
  -        String[] paramVals = request.getParameterValues(paramName);
  -        if (paramVals != null)
  -            transformer.setParameter(paramName, paramVals[0]);               
                             
  +        String paramVal = request.getParameter(paramName);
  +        if (paramVal != null)
  +          transformer.setParameter(paramName, paramVal);                     
                       
         }
         catch (Exception e)
         {
         }
       }
  -  }
  -  
  +  }  
   }
  
  
  
  1.1                  xml-xalan/java/samples/servlet/fooparam.xml
  
  Index: fooparam.xml
  ===================================================================
  <?xml version="1.0"?>
  <doc>Hello</doc>
  
  
  
  1.1                  xml-xalan/java/samples/servlet/fooparam.xsl
  
  Index: fooparam.xsl
  ===================================================================
  <?xml version="1.0"?> 
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; 
version="1.0">
    <xsl:param name="param1" select="'default value'"/>
    <xsl:template match="doc">
      <html><body><p><xsl:value-of select="$param1"/></p></body></html>
    </xsl:template>
  </xsl:stylesheet>
  
  
  
  1.1                  
xml-xalan/java/samples/servlet/UseStylesheetParamServlet.java
  
  Index: UseStylesheetParamServlet.java
  ===================================================================
  
  /*
  Simple Servlet Example using a stylesheet parameter
   */
  package servlet;
  // Imported TraX classes
  import javax.xml.transform.TransformerFactory;
  import javax.xml.transform.Transformer;
  import javax.xml.transform.stream.StreamSource;
  import javax.xml.transform.stream.StreamResult;
  import javax.xml.transform.TransformerException;
  import javax.xml.transform.TransformerConfigurationException;
  
  // Imported SAX classes
  import org.xml.sax.SAXException;
  
  // Imported java.io and javax.servlet classes
  import java.io.*;
  import javax.servlet.*;
  import javax.servlet.http.*;
  
  public class UseStylesheetParamServlet extends HttpServlet {
        
        PrintWriter out;
        String xslFile, xmlFile, paramValue;
        public void doGet(HttpServletRequest req,
                HttpServletResponse res)
                        throws ServletException, IOException {
                try {
                        res.setContentType("text/html");
                        out = res.getWriter();
  
        paramValue = req.getParameter("PVAL");
                        xmlFile    = req.getParameter("XML");
                        xslFile    = req.getParameter("XSL");
                if (paramValue == null) {
                        out.println(
                        "<h1>No input for paramValue</h1>");
                        return;
                }
                if ( xmlFile == null) {
                        out.println(
                        "<h1>No input for xmlFile</h1>");
                        return;
                }       
                if ( xslFile == null) {
                        out.println(
                        "<h1>No input for xslFile</h1>");
                        return;
                }
                TransformerFactory tFactory =
                        TransformerFactory.newInstance();
                Transformer transformer =
                        tFactory.newTransformer(new StreamSource(xslFile));
  
      // Set the stylesheet parameter (named param1).
                        transformer.setParameter("param1", paramValue);
      // Perform the transformation.
                        transformer.transform(new StreamSource(xmlFile),
                                                          new 
StreamResult(out));
                }               
      catch (IOException e) {                   
                        e.printStackTrace();
                        System.exit(-1);
                }
                catch (TransformerException e) {
        e.printStackTrace(out);
                        return;
                }
        }
  }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to