PDA

View Full Version : [JSP] Problemi con i primi esercizi (da newbie)


utrecht
20-03-2005, 13:29
ciao a tutti,
è da circa 24h che ho cominciato "a smanettare" un po' con Tomcat e dovrei iniziare a studiare le Java Server Pages ma ho già dei problemi....
L'installazione è andata bene: ora sono all'url http://localhost:8080/jsp-examples/ e, dopo aver testato gli esercizi esistenti, vorrei provare con la mia prima .jsp

Ho seguito dei tutorial in rete tuttavia permangono i problemi.
Inserisco nella directory Tomcat 5.0\webapps\jsp-examples\jsp2\tagfiles una mia paginetta banale (data.jsp) con il seguente codice:
---
<html>
<head>
<title>Untitled</title>
</head>
<body>
<%="hello!" %>
</body>
</html>
'Stoppo' Tomcat e poi lo riavvio... quando vado però su http://localhost:8080/jsp-examples/jsp2/tagfiles/data.jsp è un'elenco di errori che non finisce più (riporto solo l'inizio per non dilungarmi troppo...)

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.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:346)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:414)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
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)

root cause [segue...]

Dimenticavo..... non fatemi cazziatoni ma non ho compilato...
La compilazione non avviene nel momento in cui fermo e riavvio Tomcat?
Devo installare 'ant' e compilare prima con quelllo?

Grazie a tutti per gli eventuali interventi :-)

kingv
20-03-2005, 16:23
la compilazione, se necessaria, avviene al momento in cui accedi alla pagina.
Il web server si lamenta perche' quella che gli dai in pasto non e' una jsp. ;)
almeno il tag "page" devi metterlo. :O

utrecht
21-03-2005, 14:40
Ho ripreso integralmente uno script d'esempio da un tutorial:
---
<%@page language="java"%>
<%@page import="java.util.*"%>
<html>
<head>
<title>Java Server Pages: Hello</title>
</head>
<body>
<% out.println(" Hello! "); %>
<%= new Date() %>
</body>
</html>

......però ottengo sempre lo stesso errore :-( Infatti non mi compila nemmeno la servlet corrispondente.
L'installazione di tomcat dovrebbe essere a posto perchè tutti gli altri esercizio li visualizzo bene.

Qualcuno riuscirebbe a darmi una mano? Grazie!!

kingv
21-03-2005, 15:59
posta tutto l'errore, compreso il pezzo dopo root cause ecc.ecc.

texerasmo
21-03-2005, 16:31
Hello! Mon Mar 21 17:33:52 GMT+01:00 2005
Ho provato la tua pagina a me funziona.
Tu dove metti questa pagina?

utrecht
21-03-2005, 21:14
posta tutto l'errore, compreso il pezzo dopo root cause ecc.ecc.

Eccolo:
---
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.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:346)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:414)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
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)

root cause

Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:106)
org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:935)
org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:764)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:382)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
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.28 logs.

-----

Ho provato la tua pagina a me funziona.
Tu dove metti questa pagina?


Ho, ad es, un file che funziona all'url http://localhost:8080/jsp-examples/simpletag/foo.jsp e in questa directory ho posizionato il mio data.jsp che quindi diventa:
http://localhost:8080/jsp-examples/simpletag/data0.jsp

Il resto è storia nota.... una paginata di errore.

Grazie

beppegrillo
21-03-2005, 21:21
Unable to find a javac compiler


Semplicemente non hai settato la path del compilatore ;)

kingv
22-03-2005, 08:01
Originariamente inviato da beppegrillo
Semplicemente non hai settato la path del compilatore ;)


secondo me invece tomcat sta girando con JRE al posto che con JDK ;)

utrecht
22-03-2005, 12:59
Questo è quanto avevo installato mesi fa sotto C:\
Java(TM) 2 SDK, Standard Edition
Version 1.4.1
La dir del mio compilatore è quindi C:\java\bin\javac.exe

Ora ho tomcat sotto C:\Programmi\Apache Software Foundation\Tomcat 5.0

Ditemi che non ho fatto casini...

Semplicemente non hai settato la path del compilatore

Ehm... quindi cosa dovrei fare ora? :(
Perdonami ma, come avrai capito, sono proprio all'inizio...

grazie