You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by pi...@locus.apache.org on 2000/09/19 21:21:16 UTC
cvs commit: jakarta-tomcat-4.0/jasper/src/share/org/apache/jasper/compiler Compiler.java
pierred 00/09/19 12:21:15
Modified: jasper/src/share/org/apache/jasper/compiler Compiler.java
Log:
Support for XML syntax:
now uses ParserController which abstracts the selection of the
proper parser.
Revision Changes Path
1.2 +34 -16 jakarta-tomcat-4.0/jasper/src/share/org/apache/jasper/compiler/Compiler.java
Index: Compiler.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-4.0/jasper/src/share/org/apache/jasper/compiler/Compiler.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Compiler.java 2000/08/12 00:52:07 1.1
+++ Compiler.java 2000/09/19 19:21:12 1.2
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-tomcat-4.0/jasper/src/share/org/apache/jasper/compiler/Compiler.java,v 1.1 2000/08/12 00:52:07 pierred Exp $
- * $Revision: 1.1 $
- * $Date: 2000/08/12 00:52:07 $
+ * $Header: /home/cvs/jakarta-tomcat-4.0/jasper/src/share/org/apache/jasper/compiler/Compiler.java,v 1.2 2000/09/19 19:21:12 pierred Exp $
+ * $Revision: 1.2 $
+ * $Date: 2000/09/19 19:21:12 $
*
* ====================================================================
*
@@ -84,6 +84,7 @@
*
* @author Anil K. Vijendran
* @author Mandar Raje
+ * @author Pierre Delisle
*/
public class Compiler {
protected JavaCompiler javac;
@@ -134,8 +135,18 @@
new Object[] { className },
Logger.DEBUG);
-
-
+ // Setup the ServletWriter
+ String javaEncoding = "UTF8"; // perhaps debatable?
+ ServletWriter writer =
+ (new ServletWriter
+ (new PrintWriter
+ (new java.io.OutputStreamWriter(
+ new FileOutputStream(javaFileName),javaEncoding))));
+ ctxt.setWriter(writer);
+
+ /* NOT COMPILED -- remove eventually -- kept for temp reference
+ @@@ ParserController still needs to handle jspEncoding
+ for JSP syntax files
// Need the encoding specified in the JSP 'page' directive for
// - reading the JSP page
// - writing the JSP servlet source
@@ -143,7 +154,6 @@
// XXX - There are really three encodings of interest.
String jspEncoding = "8859_1"; // default per JSP spec
- String javaEncoding = "UTF8"; // perhaps debatable?
// This seems to be a reasonable point to scan the JSP file
// for a 'contentType' directive. If it found then the set
@@ -165,23 +175,31 @@
ctxt,
jspEncoding
);
-
- ServletWriter writer =
- (new ServletWriter
- (new PrintWriter
- (new java.io.OutputStreamWriter(
- new FileOutputStream(javaFileName),javaEncoding))));
-
ctxt.setReader(reader);
- ctxt.setWriter(writer);
-
ParseEventListener listener = new JspParseEventListener(ctxt);
-
+ */
+
+ /* NOT COMPILED
Parser p = new Parser(reader, listener);
listener.beginPageProcessing();
p.parse();
listener.endPageProcessing();
+ */
+
+ // Parse the file
+ ParserController parserCtl = new ParserController(ctxt);
+ parserCtl.parse(ctxt.getJspFile());
+
+ // Generate the servlet
+ ParseEventListener listener = parserCtl.getParseEventListener();
+ listener.beginPageProcessing();
+ listener.endPageProcessing();
writer.close();
+
+ // An XML input stream has been produced and can be validated
+ // by TagLibraryValidator classes
+ ((JspParseEventListener)listener).validate();
+
String classpath = ctxt.getClassPath();