PDA

Visualizza versione completa : [JAVA] CLASSPATH e TOMCAT


DavideDave
21-12-2004, 12.06.12
Sto implementando un programma di terzi (sotto forma di JAR) nella mia applicazione, che gira sotto Tomcat.

Questo programma necessita di alcuni file di properties proprietari.

Il problema è che li cerca nel CLASSPATH.

Questo è il CLASSPATH se lo stampo dall'applicazione subito prima di chiamare il programma:

C:\j2sdk1.4.2\lib\tools.jar;C:\jakarta-tomcat-4.1.30\bin\bootstrap.jar

Capite che così non va bene...

Si puo' sovrascrivere il CLASSPATH dai files di configurazione di Tomcat? Con il vecchio JServer si poteva....soltanto che ora mi sembra di aver capito che a Tomcat del CLASSPATH non interessa perkè tutte le classi devono stare sotto WEB-INF/classes...solo che sto file è un file di properties...non una classe...

Dav82
21-12-2004, 18.35.30
So che TOMCAT prende le classi o dove hai detto tu oppure in un percorso su file system specificato in un file di configurazione... non so se è il web.xml o altro, al momento non ricordo e non ho sottomano tomcat :eek:
Se per caso tomcat aggiunge il percorso esterno al CLASSPATH il gioco è fatto: inserisci il path dove metti i file di properties nel file di configurazione ti tomcat e il gioco è fatto... se invece li usa in altro modo (ma non penso proprio) non saprei dirti...

Cmq prova a dare un'occhiata alle specifiche della struttura del web.xml (nella distribuzione di tomcat c'è un file d'esempio) e vedi se è lì che puoi indicare dove trovare jar esterni...

Ciao :)

DavideDave
22-12-2004, 09.09.33
no, web.xml e server.xml non sembrerebbero andare bene. non mi pare esistere un wrapper del CLASSPATH così come avveniva con JServ. ho invece scoperto che catalina.bat chiama un setclassapth.bat ed ho intervenuto su quello, riuscendo a settarmi il CLASSAPATH così come mi serviva...

Fast-M
26-12-2004, 15.56.04
Se usi JbuilderX che ha già le librerie di Tomcat e Struts e vai in Project->Default project properties fai tutto in 3 minuti circa.
:)

DavideDave
28-12-2004, 19.25.51
AVEVO DETTO LA KAGATA

in realtà guardando bene catalina.bat il modo di intervenire sul CLASSPATH c'è eccome... TOMCAT non lo sovrascrive... e il punto migliore dove intevenire neanche a farlo apposta è un fantastico SETCLASSPATH.BAT che sta in bin .... robe dell'altro mondo :D

Dav82
28-12-2004, 19.50.53
Originariamente inviato da DavideDave
AVEVO DETTO LA KAGATA

Capita a tutti di Cire la cacata! :D

(Y) :)


p.s: oh, cmq la cosa del mio post sopra non me la sono sognata eh... da qualche parte c'è, però non so se è adatta allo scopo... questa tua è sicuramente la cosa migliore!