You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ki...@apache.org on 2002/07/19 03:13:47 UTC
cvs commit: jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/servlet JspServletWrapper.java
kinman 2002/07/18 18:13:47
Modified: jasper2/src/share/org/apache/jasper/compiler Compiler.java
jasper2/src/share/org/apache/jasper/servlet
JspServletWrapper.java
Log:
- Fixed 10766: <%@ page extends %> causes ClassCastException
Revision Changes Path
1.21 +16 -6 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Compiler.java
Index: Compiler.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Compiler.java,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- Compiler.java 16 Jul 2002 23:40:06 -0000 1.20
+++ Compiler.java 19 Jul 2002 01:13:46 -0000 1.21
@@ -63,8 +63,9 @@
import java.util.*;
import java.io.*;
import java.net.URL;
-import javax.servlet.jsp.tagext.TagInfo;
+import javax.servlet.Servlet;
import javax.servlet.ServletException;
+import javax.servlet.jsp.tagext.TagInfo;
import org.xml.sax.Attributes;
@@ -386,7 +387,7 @@
if( jsw==null ) {
return false;
}
- HttpJspBase servlet=null;
+ Servlet servlet=null;
try {
servlet = jsw.getServlet();
} catch( ServletException ex1 ) {
@@ -396,7 +397,16 @@
// System.out.println("Compiler: outdated, no servlet " + targetFile );
return true;
}
- List includes = servlet.getIncludes();
+
+ List includes = null;
+ // If the page contains a page directive with "extends" attribute
+ // it may not be an instance of HttpJspBase.
+ // For now only track dependencies on included files if this is not
+ // the case. A more complete solution is to generate the servlet
+ // to implement (say) JspInlcudes which contains getIncludes method.
+ if (servlet instanceof HttpJspBase) {
+ includes = ((HttpJspBase)servlet).getIncludes();
+ }
if (includes == null) {
return false;
}
1.7 +5 -5 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/servlet/JspServletWrapper.java
Index: JspServletWrapper.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/servlet/JspServletWrapper.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- JspServletWrapper.java 24 Jun 2002 22:13:08 -0000 1.6
+++ JspServletWrapper.java 19 Jul 2002 01:13:46 -0000 1.7
@@ -129,7 +129,7 @@
return ctxt;
}
- public HttpJspBase getServlet()
+ public Servlet getServlet()
throws ServletException, IOException, FileNotFoundException
{
if (ctxt.isReload()) {
@@ -153,7 +153,7 @@
}
}
}
- return (HttpJspBase)theServlet;
+ return theServlet;
}
public ServletContext getServletContext() {
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>