tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 28210] New: - Sometimes after restarts Tomcat writes compliled JSP to wrong location
Date Mon, 05 Apr 2004 15:46:56 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=28210>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=28210

Sometimes after restarts Tomcat writes compliled JSP to wrong location

           Summary: Sometimes after restarts Tomcat writes compliled JSP to
                    wrong location
           Product: Tomcat 5
           Version: 5.0.16
          Platform: PC
        OS/Version: Windows NT/2K
            Status: NEW
          Severity: Blocker
          Priority: Other
         Component: Jasper
        AssignedTo: tomcat-dev@jakarta.apache.org
        ReportedBy: tomcat5@tjworld.org


Apache Tomcat/5.0.16 JVM 1.4.2_03-b02 Sun Microsystems Inc. Windows 2003 5.2 
x86 

Sometimes after a restart all JSP pages fail to execute, with Tomcat reporting 
a range of errors of which the one attached to the end of this report is 
typical. Basically they say the .class file can't be found.

We have a directory hierachy of D:\InetPub\hostingRoot\<project>\ with various 
sub-directories depending on project context.

The hostingRoot directory is shared by windows as "hostingroot" on 
server "Popeye" :- \\Popeye\hostingroot\

For JSP development we typically use

D:\InetPub\hostingRoot\<project>\resource\java\

On one occassion recently we saw an error that told us the complied JSP 
couldn't be found. We eventually worked out what had happened, fixed it 
through restarting Tomcat, and thought no more of it.

It's happened again today.

The context's base path is the UNC path:

//Popeye/hostingRoot/test.2xp.co.uk/resource/java

What is happening is that although the project is in the file system at:

D:\InetPub\hostingRoot\test.2xp.co.uk\resource\java\

the complied java file is being written elsewhere:

D:\hostingRoot\test.2xp.co.uk\resource\java\work\org\apache\jsp\dbTags_jsp.clas
s

You'll see in the error report that for some reason Jasper appears to 
be 'forgetting' to write to \\Popeye\hostingroot\ and instead writing to

D:\hostingroot\

The error report suggests that the file is being sought at "\hostingroot\..." 
which suggests 2 issues:

1) Misses off the server part of the UNC path "\\Popeye\", then creats a 
hierachy of directories on the disk file system on a new path, and the .class 
file belonging to the JSP page is there.

2) It uses the windows default drive letter for the application as a prefix, 
or the OS assumes the drive letter.

We've not managed to solve it this time by doing a restart.

It appears to be an intermittent bug but it's so rare we can't isolate a 
scenario to reproduce it.

It affects the \jsp-examples context too. To my knowledge the server is in 
it's default configuration post-install.

TJ.

---- error report ----
type Exception report

message 

description The server encountered an internal error () that prevented it from 
fulfilling this request.

exception 

org.apache.jasper.JasperException: Unable to compile class for JSP
	org.apache.jasper.JspCompilationContext.compile
(JspCompilationContext.java:558)
	org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:291)
	org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:301)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:856)


root cause 

java.io.FileNotFoundException: no such file: 
\hostingRoot\test.2xp.co.uk\resource\java\work\org\apache\jsp\dbTags_jsp.class
	org.apache.jasper.compiler.SmapUtil$SDEInstaller.(SmapUtil.java:237)
	org.apache.jasper.compiler.SmapUtil$SDEInstaller.install
(SmapUtil.java:225)
	org.apache.jasper.compiler.SmapUtil.installSmap(SmapUtil.java:153)
	org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:429)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:458)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
	org.apache.jasper.JspCompilationContext.compile
(JspCompilationContext.java:552)
	org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:291)
	org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:301)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

---------------------------------------------------------------------
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