JSP Error Status 500

hi!

im testing on deploying a jsp file, following this tutorial

http://www.onjava.com/pub/a/onjava/2001/04/19/tomcat.html?page=1

i installed tomcat on linux, on the onjava directory i have the login.jsp file, i follwed the same tutorial using windows and everything works fine, but on linux, i can only access up to this link http://192.168.70.77:8080/onjava/ using this it displays the file it has the images directory and the login.jsp file, when i click images it displays another directory listing of the images, but when i click login.jsp it shows

root cause

java.io.FileNotFoundException: /usr/local/jakarta-tomcat-4.1.27/work/Standalone/192.168.70.77/onjava/login_jsp.java (No such file or directory)

why does it say login_jsp.java when it is a login.jsp file? i've tried creating an html file on onjava directory and i can acess it, just this login.jsp file that shows this error,

i noticed that it only happens if i access jsp files, i renamed my html file which just displays Hello, to a jsp file and it shows up again that error

thank you so much sir/mam.

Message was edited by:

tuaman

[1167 byte] By [tuamana] at [2007-10-3 2:22:03]
# 1

> why does it say login_jsp.java when it is a login.jsp

> file?

Because login.jsp is compiled to a servlet named login_jsp.java by the container, as all jsp pages pass through the same process.

Normally, when a resource is not found, the Web server will send back a 404 err code, not a 500.

You should follow the "dicuss" link on that tutorial and check the comments there, in particular the one addressing Suse users:

http://www.onjava.com/pub/a/onjava/2001/04/19/tomcat.html?page=last#thread

karma-9a at 2007-7-14 19:21:01 > top of Java-index,Java Essentials,New To Java...
# 2

hi!

im using tomcat 4.1.27 on linux, i have the same setup on windows xp and it works fine.

it is error 500,

when i access this http://192.168.70.77:8080/onjava/

i get this

[CODE]

Directory Listing For /

Filename Size Last Modified

images/Wed, 09 Aug 2006 07:19:40 GMT

login.jsp 1.1 kb Wed, 09 Aug 2006 07:20:00 GMT

tua.jsp 0.1 kb Wed, 09 Aug 2006 08:10:45 GMT

welcome.jsp 0.4 kb Wed, 09 Aug 2006 08:26:21 GM

[/CODE]

when i click login.jsp i get this

[CODE]

HTTP Status 500 -

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

at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:478)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)

at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)

at java.lang.Thread.run(Thread.java:534)

root cause

java.io.FileNotFoundException: /usr/local/jakarta-tomcat-4.1.27/work/Standalone/192.168.70.77/onjava/login_jsp.java (No such file or directory)

at java.io.FileOutputStream.open(Native Method)

at java.io.FileOutputStream.(FileOutputStream.java:179)

at java.io.FileOutputStream.(FileOutputStream.java:70)

at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:216)

at org.apache.jasper.compiler.Compiler.compile(Compiler.java:369)

at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)

at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)

at java.lang.Thread.run(Thread.java:534)

Apache Tomcat/4.1.27

[/CODE]

what could be the error? when i acess html files it works fine, my CLASSPATH is setup fine. thank you so much again sir/mam =)

Message was edited by:

tuaman

tuamana at 2007-7-14 19:21:01 > top of Java-index,Java Essentials,New To Java...
# 3
sounds like a configuration or permissions problem with Tomcat.Does the user Tomcat uses for the JSP compiler have read/write access to the directory it needs?
jwentinga at 2007-7-14 19:21:01 > top of Java-index,Java Essentials,New To Java...
# 4

hi!

thanks for the reply, what do you mean by

> Does the user Tomcat uses for the JSP compiler have

> read/write access to the directory it needs?

here's the directory access

[tomcat@OPI7 webapps]$ ls -l onjava/

total 20

drwxrwxr-x2 tomcattomcat4096 Aug 9 15:19 images

-rwxrwxrwx1 tomcattomcat1144 Aug 9 15:20 login.jsp

-rw-rw-r--1 tomcattomcat 53 Aug 9 16:10 tua.jsp

drwxrwxr-x4 tomcattomcat4096 Aug 9 15:12 WEB-INF

-rwxr--r--1 tomcattomcat436 Aug 9 16:26 welcome.jsp

[tomcat@OPI7 webapps]$ ls -ld onjava/

drwxrwxr-x4 tomcattomcat4096 Aug 9 16:30 onjava/

tuamana at 2007-7-14 19:21:01 > top of Java-index,Java Essentials,New To Java...