tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kin...@apache.org
Subject cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler JspDocumentParser.java ParserController.java
Date Mon, 16 Aug 2004 22:35:38 GMT
kinman      2004/08/16 15:35:38

  Modified:    jasper2/src/share/org/apache/jasper/compiler
                        JspDocumentParser.java ParserController.java
  Log:
  - Close any InputStream open in JspDocumentParser.
  
  Revision  Changes    Path
  1.83      +24 -37    jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java
  
  Index: JspDocumentParser.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/JspDocumentParser.java,v
  retrieving revision 1.82
  retrieving revision 1.83
  diff -u -r1.82 -r1.83
  --- JspDocumentParser.java	13 Jul 2004 20:38:56 -0000	1.82
  +++ JspDocumentParser.java	16 Aug 2004 22:35:37 -0000	1.83
  @@ -18,6 +18,8 @@
   import java.io.CharArrayWriter;
   import java.io.FileNotFoundException;
   import java.io.IOException;
  +import java.io.InputStream;
  +
   import java.util.Iterator;
   import java.util.List;
   import java.util.jar.JarFile;
  @@ -166,24 +168,32 @@
   
               // Parse the input
               SAXParser saxParser = getSAXParser(false, jspDocParser);
  +            InputStream inStream = null;
               try {
  -                saxParser.parse(
  -                    jspDocParser.getInputSource(
  -                        path,
  -                        jarFile,
  -                        jspDocParser.ctxt,
  -                        jspDocParser.err),
  -                    jspDocParser);
  +                inStream = JspUtil.getInputStream(path, jarFile,
  +                                                  jspDocParser.ctxt,
  +                                                  jspDocParser.err);
  +                saxParser.parse(new InputSource(inStream), jspDocParser);
               } catch (EnableDTDValidationException e) {
                   saxParser = getSAXParser(true, jspDocParser);
                   jspDocParser.isValidating = true;
  -                saxParser.parse(
  -                    jspDocParser.getInputSource(
  -                        path,
  -                        jarFile,
  -                        jspDocParser.ctxt,
  -                        jspDocParser.err),
  -                    jspDocParser);
  +                if (inStream != null) {
  +                    try {
  +                        inStream.close();
  +                    } catch (Exception any) {
  +                    }
  +                }
  +                inStream = JspUtil.getInputStream(path, jarFile,
  +                                                  jspDocParser.ctxt,
  +                                                  jspDocParser.err);
  +                saxParser.parse(new InputSource(inStream), jspDocParser);
  +            } finally {
  +                if (inStream != null) {
  +                    try {
  +                        inStream.close();
  +                    } catch (Exception any) {
  +                    }
  +                }
               }
   
               if (parent == null) {
  @@ -1369,29 +1379,6 @@
           xmlReader.setErrorHandler(jspDocParser);
   
           return saxParser;
  -    }
  -
  -    /*
  -     * Gets an InputSource to the JSP document or tag file to be parsed.
  -     *
  -     * @param path The path to the JSP document or tag file to be parsed
  -     * @param jarFile The JAR file from which to read the JSP document or tag
  -     * file, or null if the JSP document or tag file is to be read from the
  -     * filesystem
  -     * @param ctxt The JSP compilation context
  -     * @param err The error dispatcher
  -     *
  -     * @return An InputSource to the requested JSP document or tag file
  -     */
  -    private InputSource getInputSource(
  -        String path,
  -        JarFile jarFile,
  -        JspCompilationContext ctxt,
  -        ErrorDispatcher err)
  -        throws Exception {
  -
  -        return new InputSource(
  -            JspUtil.getInputStream(path, jarFile, ctxt, err));
       }
   
       /*
  
  
  
  1.54      +8 -16     jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ParserController.java
  
  Index: ParserController.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ParserController.java,v
  retrieving revision 1.53
  retrieving revision 1.54
  diff -u -r1.53 -r1.54
  --- ParserController.java	12 Jul 2004 22:54:33 -0000	1.53
  +++ ParserController.java	16 Aug 2004 22:35:37 -0000	1.54
  @@ -192,22 +192,14 @@
   	// Dispatch to the appropriate parser
   	if (isXml) {
   	    // JSP document (XML syntax)
  -	    InputStream inStream = null;
  -	    try {
  -		parsedPage = JspDocumentParser.parse(this, absFileName,
  -						     jarFile, parent,
  -						     isTagFile, directiveOnly,
  -						     sourceEnc,
  -						     jspConfigPageEnc,
  -						     isEncodingSpecifiedInProlog);
  -	    } finally {
  -		if (inStream != null) {
  -		    try {
  -			inStream.close();
  -		    } catch (Exception any) {
  -		    }
  -		}
  -	    }
  +            // InputStream for jspx page is created and properly closed in
  +            // JspDocumentParser.
  +            parsedPage = JspDocumentParser.parse(this, absFileName,
  +                                                 jarFile, parent,
  +                                                 isTagFile, directiveOnly,
  +                                                 sourceEnc,
  +                                                 jspConfigPageEnc,
  +                                                 isEncodingSpecifiedInProlog);
   	} else {
   	    // Standard syntax
   	    InputStreamReader inStreamReader = null;
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org


Mime
View raw message