Newsgroup: it.comp.java
Titolo: [tomcat] Un po' di luce su 'ste benedette CATALINA_HOME e CLASSPATH (da newbie)

ciao a tutti,
partiamo da questa situazione:
Ho installato sotto Java(TM) 2 SDK, Standard Edition Version 1.4.1
La dir del mio compilatore è C:\java\bin\javac.exe
Ora ho tomcat sotto C:\Programmi\Apache Software Foundation\Tomcat 5.0
All'url 
http://localhost:8080/
 nessun problema, così come visualizzo 
bene le varie .jsp di esempio.
I problemi nascono quando provo a compilare... ottengo una paginata di 
errore
Ma come vanno settate le fantomatiche (per me! :-() variabili d'ambiente 
CATALINA_HOME e CLASSPATH?
Soprattutto: dove le trovo? In un tutorial indicavano un file tomcat.bat 
per settarle ma io non ce l'ho...
Riuscite a fare un po' di chiarezza?
Grazie per gli eventuali interventi.

jason vorhees ha scritto:

Pulsante DX su "Risorse del computer" --> Proprietà --> Avanzate --> 
Variabili d'ambiente

Cosa stai tentando di compilare? una jsp o un qualcos'altro di diverso?
le jsp, come ti compila quelle di tomcat, dovrebbe compilarle tutte.
CATALINA_HOME generalmente - se non erro - viene settata da startup.bat, il
classpath e' tutt'altra storia.
Quello che non capisco e' cosa ci combini un problema di compilazione con
Tomcat, magari se dai qualche dettaglio in piu'...
Francesco

Francesco Galli ha scritto:

Sto cercando di conoscere meglio l'ambiente di tomcat ed ho visto che 
c'erano parecchi esempi di .jsp. Dovendo imparare il linguaggio, ho 
cominciato a scrivere codice ex novo.
Ecco dunque la prima prova: data.jsp.
---
<html>
<head>
<title>prova</title>
</head>
<body>
<%@page language="java" %>
<% new java.util.Date() %>
</body>
</html>
Leggendo un po' di materiale avevo inteso che la compilazione avvenisse 
nel momento in cui richiamo la pagina via browser tuttavia ottengo una 
segnalazione di errore lunghissima.
CATALINA_HOME è esatta (la directory di lavoro del server), però mi 
rimangono dei dubbi su come settare la CLASSPATH, forse la causa 
dell'errore che viene restituito
---
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.
---
Grazie :-)

 Grazie :-)
Nicola
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Ma hai installato il JDK senza che l'installazione non settasse la
JAVA_HOME? Probabilmente o non c'e' il jdk o e' stato installato male.
Quella jsp non ti compilera' comunque, ma almeno cambiera' l'errore :-)
Ciao,
   Francesco

Francesco Galli ha scritto:

Non vorrei abusare della tua pazienza :-)
Ho installato Java(TM) 2 SDK, Standard Edition Version 1.4.1
La dir del mio compilatore č C:\java\bin\javac.exe
Gli esercizi in java che facevo venivano compilati ed eseguiti 
correttamente sotto quella directory.
Ora ho tomcat sotto C:\Programmi\Apache Software Foundation\
con CATALINA_HOME=C:\Programmi\Apache Software Foundation\Tomcat 5.0\webapps
Le .jsp risiedono in webapps\jsp-examples\my_exercises (quindi via 
browser dovrei visualizzarle all'url 
http://localhost:8080/jsp-examples/my_exercises
)
Come configurazione questa č corretta?
Grazie mille!!

Non abusi per nulla della mia pazienza. Quelli che abusano sono ben altri :)
Il problema e' che molto probabilmente la tua JAVA_HOME punta al JRE e non
al JDK; ho avuto un problema simile al tuo poco dopo la lettura del thread
(avevo disinstallato e reinstallato eclipse) e il problema era quello.
Verifica che la tua JAVA_HOME punti a un JDK e non a un JRE.
ciao,
   Francesco

Puoi tenerli separati, utilizzando il jre per il browser e il jdk per lo
sviluppo.
Ti consiglio di installarti il jdk in una directory separata. Lo riconosci,
ci DEVE essere il javac che nel jre non e' necessario.
Ciao,
   Francesco