Avatar billede abatabat Nybegynder
07. april 2006 - 09:51 Der er 20 kommentarer og
1 løsning

finde stien til hvor servletten ligger

er der en metode til at finde hvor ens servlet ligger(math path?)
fx. c:/web/apps/servlet....
jeg skal bruge det til at jeg henter data fra en fil, og derfor skal kende dens adresse, selv om jeg flytter servletten over på en anden maskine i et helt andet katalog...
Avatar billede arne_v Ekspert
07. april 2006 - 13:29 #1
getServletContext().getRealPath("noget")
Avatar billede arne_v Ekspert
07. april 2006 - 13:30 #2
jeg kan ikke lide ideen

fordi nogle servlet containere skal have en war som udpakkes

bedre at angive stedet i web.xml
Avatar billede abatabat Nybegynder
07. april 2006 - 14:43 #3
jeg vil også helst have den relative web sti, men jeg kan bare ikke få det til at virke så skulle lige tjekke den absolutte...
Avatar billede arne_v Ekspert
08. april 2006 - 01:16 #4
det bedste er nok at putte filen samme med kode og læse den som en ressource
Avatar billede abatabat Nybegynder
10. april 2006 - 08:10 #5
jeg har dem til at ligge i mit projekt, men er du venlig at uddybe læse som ressource?
Avatar billede arne_v Ekspert
10. april 2006 - 12:41 #6
getClass().getResourceAsStream(filename);
Avatar billede abatabat Nybegynder
10. april 2006 - 14:00 #7
hmm så brokker den sig over den ikke kan finde variablen "filename", hvis vi antager filen hedder filename
Avatar billede arne_v Ekspert
10. april 2006 - 14:31 #8
enten skal du have en variabel eller saa er det naturligvis

getClass().getResourceAsStream("foobar.txt")

hvor den saa vil kigge efter WEB-INF/classes/foobar.txt
Avatar billede abatabat Nybegynder
10. april 2006 - 14:50 #9
sorry glemte ""... nu retuner den null,,, så kigger lige på om filen ligger rigtigt...
Avatar billede abatabat Nybegynder
10. april 2006 - 14:54 #10
den ligger inde i WEB-INF/classes/servlets når jeg går ind i det katalog tomcat'en opretter udfra .war filen.....
Avatar billede abatabat Nybegynder
10. april 2006 - 14:56 #11
men hvilken sti skal man så skrive i java filen hvor jeg skal hente data'en ind...
Avatar billede arne_v Ekspert
10. april 2006 - 14:58 #12
"servlets/foobar.txt" skulle blive til  WEB-INF/classes/servlets/foobar.txt
Avatar billede abatabat Nybegynder
10. april 2006 - 15:39 #13
jep nu virker det... mange tak for hjælpen, send lige et svar...
Avatar billede abatabat Nybegynder
10. april 2006 - 15:42 #14
der var jeg lige hurtig nok, det virker ikke, fik ikke hentet værdierne
Avatar billede abatabat Nybegynder
10. april 2006 - 15:43 #15
men smid bare et svar, nu har jeg fundet hvor den ligger i den udpakkede .war fil... så man jeg kunne referer til den på en eller anden måde...
Avatar billede arne_v Ekspert
10. april 2006 - 15:59 #16
returnerer getRessource null eller har du problemer med at laese fra stremen ?
Avatar billede arne_v Ekspert
10. april 2006 - 16:04 #17
og et svar
Avatar billede abatabat Nybegynder
11. april 2006 - 07:45 #18
den skriver null i den fil jeg gemmer indholdet af getClass().getResourceAsStream("foobar.txt")i...
Avatar billede abatabat Nybegynder
11. april 2006 - 08:35 #19
hvis jeg skriver http://localhost:8080/projekt/foobar.txt så kan jeg godt hente data ind fra filen(hvor projekt er navnet på projektet og war filen), men jeg ville godt være fri for "http://localhost:8080"
Avatar billede arne_v Ekspert
11. april 2006 - 12:40 #20
hvad med getClass().getResourceAsStream("/foobar.txt") ?
Avatar billede abatabat Nybegynder
12. april 2006 - 12:59 #21
så retuner den også null
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