Avatar billede lundsfryd Nybegynder
04. marts 2001 - 14:22 Der er 6 kommentarer

Path til servlets

Hej igen,

Jeg har lidt problemer med at køre servlets på min Tomcat; jeg ved ganske enkelt ikke, hvilken sti, de ligger på, forstået på denne måde: Jeg vil gerne lege lidt med eksemplerne i webapps-dir\'et, men kan ikke finde ud af, hvorledes disse tilgås.

Jeg har bl.a. prøvet med domain.dk/servlet/navn, domain.dk/servlet/examples/navn og meget andet, men alle gange får jeg en 404-fejl tilbage (genereret af Tomcat).
Avatar billede rasmusw Nybegynder
05. marts 2001 - 08:15 #1
har du prøvet med \"web-apps\" (eller \"webapps\") et sted i din URL?

Avatar billede sbm Nybegynder
05. marts 2001 - 13:32 #2
Nu skriver du \"min\" Tomcat, så jeg går ud fra at Tomcat serveren kører på din egen maskine? Kender du den lokale sti til de servletter som du gerne vil prøve at køre? Ofte er der et samfald mellem navnet på den mappe som servletterne ligger i, og pathen til dem i din browser.

Eksempel: Lokal path (i eksempelvis Unix) /usr/netscape/suitespot/plugins/java/servlet/
Path i URL: www.ditdomain.dk/servlet/DinKlasse

Dette kan på de fleste servere konfigureres, så det er ikke sikkert.

Alternativt: Kan det være at de enkelte klasser er en del af en Package? Det kan du se hvis de eksempelvis ligger i en undermappe under servlet-mappen. Hvis du har en test-package, og nogle servletter som en del af denne, vil URL eksempelvis kunne se således ud:

www.ditdomain.dk/servlet/Test.DinKlasse

...vel at mærke hvor klassen hedder DinKlasse og er en del af package Test ;-)
Avatar billede lundsfryd Nybegynder
05. marts 2001 - 13:53 #3
Ja, Tomcat\'en kører på egen Linux-server.

Den absolutte sti er flg.:

/usr/jakarta-tomcat/webapps/examples/WEB-INF/classes

...går jeg ud fra. Her ligger i hvert fald nogle class-filer, der er installeret sammen med eksemplerne.
Avatar billede sbm Nybegynder
05. marts 2001 - 15:53 #4
Hmmm... Det lyder mest som om det er usr/jakarta-tomcat/webapps/ der er servlet roden. Hvis det er tilfældet skal du i din browser skrive URL

www.ditdomain.dk/servlet/examples.WEB-INF.classes.eksempelklasse

Kan du ikke zippe hele webapps-mappen og maile den til steen@bang-madsen.dk og så vil jeg se om jeg kan hitte hoved og hale i det... :-)
Avatar billede lundsfryd Nybegynder
05. marts 2001 - 19:14 #5
Jeg har nu selv fået løst en del af problemet - jeg opdagede nærmest ved et tilfælde, at klasserne i /usr/jakarta-tomcat/webapps/examples/WEB-INF/classes
rent faktisk tilgåes med domain.dk/examples/klassenavn.

Jeg er dog ikke helt glad endnu, for det virker nemlig kun på Apache-serverens hoveddomain, og ikke på de virtuelle servere, der ligger derpå.

domain.dk/examples/klassenavn virker altså, men det gør domain2.dk/examples/klassenavn ikke. Det undrer mig, da JSP-filerne kører fint på domain2.dk.
Avatar billede erve Nybegynder
12. marts 2001 - 18:59 #6
Jeg mener at det hænger sådan sammen:
I filen server.xml defineres applikationens context og i hvilken mappe applikationens filer ligger relativt til TOMCAT-mappen. Herefter forventer webserveren en mappe ved navn WEB-INF under denne sti, og i WEB-INF ligger WEB.XML, hvori mapning til de enkelte servlets mm er defineret. Under WEB-INF ligger desuden mappen CLASSES, som er rootdirectory for package-stien.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester