Avatar billede el_fredo Praktikant
24. oktober 2002 - 11:28 Der er 28 kommentarer og
1 løsning

Redirect uden submit eller link

Jeg skal redirecte på en side hvor en bruger foretager logon. Hvis der indtastes korrekte oplysninger, skal man sendes videre til en anden side. Både html og jsp kode kan bruges, bare brugeren sendes videre. Det er en if-sætning der afgør om brugeren skal redirectes.
Avatar billede disky Nybegynder
24. oktober 2002 - 11:32 #1
response.sendRedirect("http://www.eksperten.dk");

Så nemt er det :-)
Avatar billede europe Nybegynder
24. oktober 2002 - 11:32 #2
Du kan bruge jsp's

<jsp:forward page="pageName" >
  <jsp:param name="parameterName" value="parameterValue" />
</jsp:forward>
Avatar billede el_fredo Praktikant
24. oktober 2002 - 11:33 #3
You.... you.... you're the man!
Avatar billede disky Nybegynder
24. oktober 2002 - 11:34 #4
:-)
Avatar billede el_fredo Praktikant
24. oktober 2002 - 11:56 #5
Disky. Jeg har kun 10 pts. tilbage. Kan du hjælpe mig med følgende lille problem? Jeg har nu registreret brugere og de skal indtaste password osv. men problemet er nu, at man uden at logge ind, kan hente filer ved at indtaste dybe links i stien i ens browser. Hvordan kan man undgå at det er muligt??? På forhånd tak!
Avatar billede disky Nybegynder
24. oktober 2002 - 12:15 #6
Bare behold dine point, jeg har rigeligt af dem :)

På alle sider der skal være beskyttet, skal du spørger din Login bean om brugeren er logget ind, hvis de ikke er skal du redirecte dem til login siden.
Avatar billede el_fredo Praktikant
24. oktober 2002 - 12:20 #7
Det har jeg gjort, men man kan stadigvæk godt indtaste den direkte sti til fx en .pdf fil i stien på browseren. Så dukker Acrobat op med filens indhold...
Avatar billede disky Nybegynder
24. oktober 2002 - 12:24 #8
nåå på den måde :)

Så skal du gøre det på webserver niveau, hvis du bruger Apache, skal du bruge .htaccess filer.

Eller fjerne alle ikke .jsp filer fra serverens scope, og kun lade dem blive downloadet via en JSP side, som så sender filen til brugeren.
Avatar billede el_fredo Praktikant
24. oktober 2002 - 12:41 #9
Jeg bruger MySQL... kan man gøre det der??? [Håber]
Avatar billede el_fredo Praktikant
24. oktober 2002 - 12:42 #10
Og Resin.
Avatar billede disky Nybegynder
24. oktober 2002 - 12:54 #11
I resin.conf angiver du en documentroot som er roden af din web directory, altså der hvor alle webfiler ligger.

hvis du uden for dette sted, laver et dir med alle de filer folk skal kunne downloade.

I stedet for at lave links direkte til de filer skal du nu lave en JSP download side som du f.eks. kalder med

download.jsp?file=EnFraekFilm.mpg

download.jsp siden kigger så på om brugeren er logget ind, og hvis han/hun er det, læser den via fil systemmet filen, og sender den så til browseren som en binær fil.

Jeg har et eksempel på hvordan man gør det med gif billeder, men jeg kan ikke nå det eksempel fra arbejdet.
Avatar billede el_fredo Praktikant
24. oktober 2002 - 12:59 #12
Kanon. Jeg prøver... endnu engang tak.
Avatar billede el_fredo Praktikant
24. oktober 2002 - 13:00 #13
Det der "download.jsp?file=xxx.xxx" skal det skrives i en tag eller i et scriptlet, eller ingenting?
Avatar billede el_fredo Praktikant
24. oktober 2002 - 13:01 #14
Jeg kan i øvrigt ikke få kontakt til dit ICQ nummer... jeg har prøvet at sende en msg.
Avatar billede disky Nybegynder
24. oktober 2002 - 13:03 #15
det skal skrives i html linken
<a href="download.jsp?file=xxx.xxx">Filmen</a>

Jeg er kun på ICQ om aftenen, derfor reagerer jeg ikke :)
Avatar billede el_fredo Praktikant
24. oktober 2002 - 13:05 #16
Ok, takker. Jeg prøver...
Avatar billede el_fredo Praktikant
24. oktober 2002 - 13:26 #17
Jeg har oprettet en download.jsp fil, hvor jeg kontrollerer hvorvidt brugeren er logget ind. Du kan se herunder hvad jeg har lavet. Det eneste der sker, når jeg trykker på linket til filen er, at der i browserens sti står:

http://localhost:8080/download.jsp?file=F100_EN_DA_SV_DE_v2310_3.exe

filen ligger i roden (\resin\doc\<<fil.exe>>).

Indhold af download.jsp:

<jsp:useBean id="connector" class="Connector" scope="session"/>
<%
    if (session.getAttribute("bruger")!=null)
    {
        System.out.println(session.getAttribute("bruger")+" is downloading a file");       
    }
    else
    {
        response.sendRedirect("http://localhost:8080/logon.jsp");
    }
   
%>

Linien i den kaldende .jsp fil:

<li><font><a href="download.jsp?file=F100_EN_DA_SV_DE_v2310_3.exe">Version 1.13</a></font>
Avatar billede el_fredo Praktikant
24. oktober 2002 - 13:37 #18
Jeg kan heller ikke finde ud af at sætte den dersens document root i resin.conf... skal de læses m. wordpad? Det ligner volapyk...
Avatar billede disky Nybegynder
24. oktober 2002 - 13:48 #19
om den lige hedder documentroot er jeg faktisk ikke sikker på.

FIlen er ren ascii og skal nok åbnes med wordpad.
Avatar billede el_fredo Praktikant
24. oktober 2002 - 13:55 #20
<http-server>
  <!--
    - The root file directory of the server.  Apache users will change
    - this to /usr/local/apache/htdocs and IIS users will change it
    - to d:\inetpub\wwwroot
    -->
  <doc-dir>doc</doc-dir> <------ NB! NB! NB! NB! NB! NB!

Jeg har filerne liggende i "doc" sammen med alle .jsp filerne. Er det den ovennævnte sti du snakkede om?
Avatar billede disky Nybegynder
24. oktober 2002 - 16:58 #21
Ja den og en tilsvarende i resin.conf

filerne skal ligge UDENFOR det scope
Avatar billede el_fredo Praktikant
25. oktober 2002 - 12:51 #22
Hvad mener du med UDENFOR det scope? Hvis mit doc library er c:\windows\skrivebord\resin\resin-4.1.2\doc\ hvad er så udenfor?
Avatar billede disky Nybegynder
25. oktober 2002 - 13:00 #23
Resin har adgang til alt det som står i documentroot (eller hvad det nu hedder) og alle subdirectories.

Udenfor betyder ikke i dette område, så kan resin var jsp IKKE komme til disse filer, men du kan godt via en klasse på serveren.

Men en bruger kan IKKE angive URL til de filer.
Avatar billede el_fredo Praktikant
25. oktober 2002 - 13:03 #24
Ok. Så det er klassens funktionalitet der giver adgang til filen, da man ikke i stien på browseren kan indtaste filen direkte, da den ikke er tilgængelig... ok. Men det fungerer stadigvæk ikke. Der dukker ikke noget op. Du kan se problemet i min kommentar længere oppe...
Avatar billede disky Nybegynder
25. oktober 2002 - 13:25 #25
Har du lavet en servlet (undskyld tidligere sagde jeg jsp, men en servlet er lettere her) der kan simulerer afsendelse af binær data, ud fra en parameter i den kaldne URL ?
Avatar billede el_fredo Praktikant
28. oktober 2002 - 11:10 #26
Nej. Jeg ved ikke hvordan jeg skal gøre det.
Avatar billede disky Nybegynder
28. oktober 2002 - 11:26 #27
Fang mig lige på ICQ i aften, så vil jeg kigge på det.
Avatar billede el_fredo Praktikant
28. oktober 2002 - 13:16 #28
Kan jeg ikke gøre det i morgen. Jeg er ikke hjemme i aften...
Avatar billede disky Nybegynder
28. oktober 2002 - 13:37 #29
det gør du bare :)
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