/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
JSP / opdatering af side
Fra : Henry Vest


Dato : 06-08-01 09:53

Jeg har en JSP-side (a.jsp) fra hvilken der sendes videre til side
b.jsp. Dette sker vha. response.sendRedirect("b.jsp"). Hvordan sikrer
jeg, at jeg altid får en opdateret version af b.jsp? b.jsp vil nemlig
ofte allerede være loadet in i browseren. I a.jsp sættes der nogle
session-variabler, der også har betydning for b.jsp.


Henry

 
 
Carsten (06-08-2001)
Kommentar
Fra : Carsten


Dato : 06-08-01 10:30

"Henry Vest" <henry_vest@get2net.dk> wrote in
message news:Xns90F56ECCC56C0henryvestget2netdk@130.225.51.30...
> Jeg har en JSP-side (a.jsp) fra hvilken der sendes videre til side
> b.jsp. Dette sker vha. response.sendRedirect("b.jsp"). Hvordan sikrer
> jeg, at jeg altid får en opdateret version af b.jsp? b.jsp vil nemlig
> ofte allerede være loadet in i browseren. I a.jsp sættes der nogle
> session-variabler, der også har betydning for b.jsp.
> Henry

Kan f.eks. gøres ved:

response.sendRedirect("b.jsp?nocache=" + Math.random());

Det bliver til en forskellig URL (næsten) hver gang, og browseren
kan derfor ikke genkende den som en den har i cache.
Parameteren benyttes ikke i jsp'en, men det har ingen betydning.

Carsten




Henry Vest (06-08-2001)
Kommentar
Fra : Henry Vest


Dato : 06-08-01 18:53

Carsten skrev:

> response.sendRedirect("b.jsp?nocache=" + Math.random());

Smart! Og så kan tricket endda også benyttes i PHP og ASP.

Takker for svaret.

Henry


Soren 'Disky' Reinke (07-08-2001)
Kommentar
Fra : Soren 'Disky' Reinke


Dato : 07-08-01 09:00


"Carsten" <carjak@wanadoo.dk> skrev i en meddelelse
news:3b6e639e$0$44083$edfadb0f@dspool01.news.tele.dk...
> "Henry Vest" <henry_vest@get2net.dk> wrote in
> message
news:Xns90F56ECCC56C0henryvestget2netdk@130.225.51.30...
> > Jeg har en JSP-side (a.jsp) fra hvilken der sendes videre til
side
> > b.jsp. Dette sker vha. response.sendRedirect("b.jsp").
Hvordan sikrer
> > jeg, at jeg altid får en opdateret version af b.jsp? b.jsp
vil nemlig
> > ofte allerede være loadet in i browseren. I a.jsp sættes der
nogle
> > session-variabler, der også har betydning for b.jsp.
> > Henry
>
> Kan f.eks. gøres ved:
>
> response.sendRedirect("b.jsp?nocache=" + Math.random());
>
> Det bliver til en forskellig URL (næsten) hver gang, og
browseren
> kan derfor ikke genkende den som en den har i cache.
> Parameteren benyttes ikke i jsp'en, men det har ingen
betydning.

eeewww

det var dog en afskyelig måde

Hvad med at fortælle browseren og proxy servere at de ikke må
cache b.jsp.

f.eks. ved at have:
response.setDateHeader("Expires", 0);
response.setHeader("Pragma", "no-cache");
if (request.getProtocol().equals("HTTP/1.1"))


response.setHeader("Cache-Control", "no-cache");
}
i din b.jsp side.

Så tvinges browseren til at reloade siden hver gang.

--
With many Thanks

Soren ' Disky ' Reinke ICQ #1413069
http://www.disky-design.dk/fish
Remove IHSYD from email address when replying by email



Henry Vest (08-08-2001)
Kommentar
Fra : Henry Vest


Dato : 08-08-01 10:54

"Soren 'Disky' Reinke" skrev:

> response.setDateHeader("Expires", 0);
> response.setHeader("Pragma", "no-cache");
> if (request.getProtocol().equals("HTTP/1.1"))
> response.setHeader("Cache-Control", "no-cache");
> }


Ja, det ser vist lidt pænere ud. Tak for det svar også.


Henry

Troels Arvin (08-08-2001)
Kommentar
Fra : Troels Arvin


Dato : 08-08-01 11:11

On Tue, 07 Aug 2001 10:00:16 +0200, "Soren 'Disky' Reinke"
<disky@disky-design.ihsyd.dk> wrote:

> response.setDateHeader("Expires", 0);
> response.setHeader("Pragma","no-cache");
> if (request.getProtocol().equals("HTTP/1.1")) {
> response.setHeader("Cache-Control", "no-cache");
> }

Der er ingen grund til at undersøge HTTP protokolversion inden
Cache-Control headers udsendes.

Det kan ikke skade at udesende en HTTP 1.1 header til en HTTP 1.0
applikation (som blot vil ignorere, hvad den ikke måtte kunne forstå).
Omvendt er der en del HTTP-applikationer, der anmelder sig som HTTP 1.0
compliant fordi de ikke overholder _hele_ HTTP 1.1 - men ofte
implementerer centrale elementer såsom Cache-Control.

Et eksempel er Squid proxy'en: Den forstår alle facetter af Cache-Control
headeren, men anmelder sig med HTTP 1.0, når den foretager requests på
vegne af user agents. Det ville være ærgerligt at afskære sig fra at
kunne benytte den højst nyttige Cache-Control overfor fx. Squid.
(Cache-Control er betydelig mere brugbar end Pragma-headeren.)

--
Greetings from Troels Arvin, Copenhagen, Denmark

Soren 'Disky' Reinke (08-08-2001)
Kommentar
Fra : Soren 'Disky' Reinke


Dato : 08-08-01 12:11


"Troels Arvin" <troels@arvin.dk> skrev i en meddelelse
news:9kr38n$qbg$1@sunsite.dk...
> On Tue, 07 Aug 2001 10:00:16 +0200, "Soren 'Disky' Reinke"
> <disky@disky-design.ihsyd.dk> wrote:
>
> > response.setDateHeader("Expires", 0);
> > response.setHeader("Pragma","no-cache");
> > if (request.getProtocol().equals("HTTP/1.1")) {
> > response.setHeader("Cache-Control", "no-cache");
> > }
>
> Der er ingen grund til at undersøge HTTP protokolversion inden
> Cache-Control headers udsendes.
>

Det må du snakke med SUN's forum om, det er der jeg har fundet
denne løsning og den fungerer perfekt :)

--
With many Thanks

Soren ' Disky ' Reinke ICQ #1413069
http://www.disky-design.dk/fish
Remove IHSYD from email address when replying by email



Martin Mouritzen (08-08-2001)
Kommentar
Fra : Martin Mouritzen


Dato : 08-08-01 12:38

On Wed, 8 Aug 2001 13:10:57 +0200, "Soren 'Disky' Reinke"
<disky@disky-design.ihsyd.dk> wrote:

>"Troels Arvin" <troels@arvin.dk> skrev
>> Der er ingen grund til at undersøge HTTP protokolversion inden
>> Cache-Control headers udsendes.

>Det må du snakke med SUN's forum om, det er der jeg har fundet
>denne løsning og den fungerer perfekt :)

Mm. bare ikke for folk bag Squid proxy :)

Jeg tror, at det han mente var, at det ikke kan skade at sende den, de
klienter der ikke forstår den, vil alligevel ignorere den, og nogle
klienter som identificerer sig som HTTP 1.0, vil godt kunne forstå
den.

Derfor er det alt ialt en "dum" ting at lade være med at sende den.

Troels Arvin (08-08-2001)
Kommentar
Fra : Troels Arvin


Dato : 08-08-01 12:52

On Wed, 08 Aug 2001 13:37:53 +0200, "Martin Mouritzen"
<mm@guidegruppen.dk> wrote:

> Mm. bare ikke for folk bag Squid proxy :)
Squid respekterer nu også Pragma, i hvertfald hvis der ikke også er en
Cache-Control, der overrider.

> Derfor er det alt ialt en "dum" ting at lade være med at sende den.
Præcis. Det er simpelthen spil af tid at tjekke HTTP protokolversion.

- Men for Søren gælder Sun's love altid suverænt

--
Greetings from Troels Arvin, Copenhagen, Denmark

Soren 'Disky' Reinke (08-08-2001)
Kommentar
Fra : Soren 'Disky' Reinke


Dato : 08-08-01 13:27

>
> > Mm. bare ikke for folk bag Squid proxy :)
> Squid respekterer nu også Pragma, i hvertfald hvis der ikke
også er en
> Cache-Control, der overrider.
>
> > Derfor er det alt ialt en "dum" ting at lade være med at
sende den.
> Præcis. Det er simpelthen spil af tid at tjekke HTTP
protokolversion.
>
> - Men for Søren gælder Sun's love altid suverænt

Troels, jeg synes du skal tilmelde dig et læse kursus for
begyndere :)

Læs hvad jeg skriver:
>Det må du snakke med SUN's forum om, det er der jeg har fundet
>denne løsning og den fungerer perfekt :)

Hvor står der lige at SUN siger man skal gøre det ?

Jeg har fundet eksemplet på deres forum, og for at du lige er
helt med, er det bare noget de hoster men ikke nødvendigvis
blander sig i folks svar og spørgsmål.

Comprende ?

--
With many Thanks

Soren ' Disky ' Reinke ICQ #1413069
http://www.disky-design.dk/fish
Remove IHSYD from email address when replying by email



Martin Mouritzen (08-08-2001)
Kommentar
Fra : Martin Mouritzen


Dato : 08-08-01 13:38

On Wed, 8 Aug 2001 14:26:57 +0200, "Soren 'Disky' Reinke"
<disky@disky-design.ihsyd.dk> wrote:

>Troels, jeg synes du skal tilmelde dig et læse kursus for
>begyndere :)

Så skal du da til en mental undersøgelse?

>Læs hvad jeg skriver:
>>Det må du snakke med SUN's forum om, det er der jeg har fundet
>>denne løsning og den fungerer perfekt :)

tsk tsk. man kan da ikke snakke med et forum.

(ps: der findes også meget bullshit på diverse fora. Man behøver ikke
tage alting for gode varer.)

Soren 'Disky' Reinke (08-08-2001)
Kommentar
Fra : Soren 'Disky' Reinke


Dato : 08-08-01 13:45

> (ps: der findes også meget bullshit på diverse fora. Man
behøver ikke
> tage alting for gode varer.)

Nå ja, ligesom newsgroups ikke ??

Det ved jeg udemærket godt, derfor har jeg også testet det, og
det fungere ligesom det skal.
Om en eller anden proxy server ikke kan hitte ud af det, gider
jeg ikke undersøge.

Men hvis du med 100% garanti kan sige det ikke skader at fjerne
det check, er det jo fint. Men ellers beholder jeg det.

--
With many Thanks

Soren ' Disky ' Reinke ICQ #1413069
http://www.disky-design.dk/fish
Remove IHSYD from email address when replying by email



Nezar Nielsen (08-08-2001)
Kommentar
Fra : Nezar Nielsen


Dato : 08-08-01 16:20

"Soren 'Disky' Reinke" <disky@disky-design.ihsyd.dk> skrev i en meddelelse
news:ouac7.151$An5.4228779025@news.euroconnect.net...
> Men hvis du med 100% garanti kan sige det ikke skader at fjerne
> det check, er det jo fint. Men ellers beholder jeg det.

Og glæder dig til HTTP/1.2 eller højere, hvis der på et tidspunkt kommer
sådan een, så du skal have fat i det store lugejern :)

--
Mvh. Nezar Nielsen
http://fez.dk/




Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste