Erro ao tentar abrir um arquivo JSP

Olá pessoal, boa noite.

Estou iniciando na programação JSP, tenho muita experiência em PHP e ASP, mas estou quebrando a cabeça para iniciar no JSP.
Tenho um servidor Debian com Apache -> http://www.p2p.com.br e com o Tomcat5 http://www.p2p.com.br:8080 instalado e funcionando perfeitamente.

Tentei rodar um arquivo helloworld.jsp e coloquei na pasta jsp-examples, só que não deu.

<html>
<body>
<center><h2><%= request.getParameter(“var”) %></h2></center>
</body>
</html>

Entre no admin do tomcat e criei um novo Context, a pasta é /var/www/html/jsp.p2p.com.br e o path é o /p2p. Quando entro no http://www.p2p.com.br:8080/p2p ele me retorna o seguinte erro.

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
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:520)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.io.FileNotFoundException: /usr/local/tomcat5/work/Catalina/localhost/p2p/org/apache/jsp/index_jsp.java
java.io.FileOutputStream.open(Native Method)
java.io.FileOutputStream.<init>(FileOutputStream.java:179)
java.io.FileOutputStream.<init>(FileOutputStream.java:70)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:188)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:470)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0 logs.

Apache Tomcat/5.0

Bem, como posso solucionar esse erro, o que é necessário criar na pasta jsp.p2p.com.br para que ele consiga rodar aquivos .jsp.

Fiz o teste do helloworld.jsp na pasta jsp.p2p.com.br e na pasta jsp-examples, mas nenhuma deu certo.

Obrigado a todos.

Fabricio da Silva Soares

não gosto de ficar criando esses contextos… bem, tente assim, na pasta /webapps do Tomcat, crie uma pra tua aplicação (no caso, teus JSPs), por exemplo

/webapps/minhaapp/

coloca teu jsp ai, e nessa pasta tu cria a estrutura basica de qualquer outra aplicação web em java, o diretorio /WEB-INF… arquivo web.xml… etc… chamando depois no browser assim:

http://www.p2p.com.br:8080/minhaapp/meujsp.jsp

Colega, na verdade o erro nao estah no local onde vc colocou…e sim aqui:

&lt;%= request.getParameter&#40;&quot;var&quot;&#41; %&gt;

tipo…estais falando que ele vai receber um parametro…esse vc naum passar o parametro para ele…ele dah pau…
olha bem o erro:

[code]HTTP Status 500 -

type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
[/code]
quando vc for chamar essa pagina…faça o seguinte…

exemplo.jsp?var=23

assim estais passando o parametro…

[]'s

Olá Diana, bom dia.

Obrigado por sua ajuda, mas eu já tinha acessado o link conforme você mencionou.
O problema é que por ser novato não entendi como fazer o arquivo web.xml e a pasta WEB-INF.
Você saberia me informar onde encontro algum exemplo pronto sobre isso?

Obrigado mais uma vez.

Fabricio da Silva Soares

http://www.mhavila.com.br/topicos/java/tomcat.html

Fiz tudo o que o link pedia mas ainda continua dando erro.
Fiz um arquivo HTML e ele está rodando normalmente no Context, só dá erro realmente nos JSP’s.
Fiquei em dúvida quando a esse erro java.io.FileNotFoundException: /usr/local/tomcat5/work/Catalina/localhost/p2p/org/apache/jsp/helloworld_jsp.java .
A pasta só existe até /usr/local/tomcat5/work/Catalina/localhost/p2p .
O restante não existe. Será que é isso?

Obrigado.

Fabricio da Silva Soares.

Olá,

o problema não é por causa do request, como foi dito antes.
Tente duas coisas:

  1. Apague todo o conteúdo da pasta Work do Tomcat. Ele armaena nesta pasta os JSPs compilados. O Tomcat 5 não tem mais problemas com cache de JSP até onde eu sei, portanto esta alternativa é a menos provável.

  2. Copie o arquivo <JAVA_HOME>/lib/tools.jar para a pasta <TOMCAT_HOME>/common/lib

Olá pessoal, boa tarde.

Obrigado a todos, o problema foi solucionado.
Realmente era aquela observação que tinha feito.
Criei o caminho completo e dei as permissões necessárias.

Obrigado.

Fabricio da Silva Soares.