Gå til innhold

Java Servlet / session / sendRedirect


Anbefalte innlegg

Har laget en webshop som er bygget opp med servlets. Når en kunde har lagt varer i handlekurven er det en servlet som viser antall varer og totalpris og en servlet som viser fullt varenavn med beskrivelse og pris.

Har støtt på et lite problem når en vare skal slettes. Den servleten som skriver ut hele varelista/handlekurven er grei å laste på nytt med en eller flere varer mindre, men så kommer problemet med å få lasta den servleten som viser antall varer og totalprisen på nytt.

Er det noen som har peiling hvordan jeg kan løse problemet med å laste 2 servleter samtidig? :hmm:

Lenke til kommentar
Videoannonse
Annonse

Forstår ikke helt spørsmålet.. Altså.. du bruker frames, hvor innholdet blir produsert av to servlets (en for handlekurv og en for beskrivelse)? Eller hva er det du gjør? Kan ikke de to være sammen, så slipper du hele problemet?

 

Vi snakker om HTTP protokollen her.. en request == en response. En request kan ikke få to responser. Hvis du skjønner hva jeg mener.

 

Eller har jeg misforstått helt?

Lenke til kommentar
Forstår ikke helt spørsmålet.. Altså.. du bruker frames, hvor innholdet blir produsert av to servlets (en for handlekurv og en for beskrivelse)? Eller hva er det du gjør? Kan ikke de to være sammen, så slipper du hele problemet?

 

Vi snakker om HTTP protokollen her.. en request == en response. En request kan ikke få to responser. Hvis du skjønner hva jeg mener.

 

Eller har jeg misforstått helt?

Vel...jeg bruker 2 frames ja. Og en servlet til å skrive ut innholdet i hver av dem. Og så vidt jeg har forstått så kan vel ikke en servlet skrive til 2 forskjellige frames.

Problemet er i grunn at når jeg trykker på en knapp i den ene servleten så skal sessionsobjektet oppdateres, og den servleten som skriver ut lista med varer i handlekurven. I tillegg skal den adre servleten oppdateres/lastes på nytt. Altså, 2 servleter skal oppdateres sammtidig med et tastetrykk.

 

Hvis bare en servlet skal lastes på nytt er jo saken grei.

da kan man jo legge til denne action til knappen som trykkes:

request.sendRedirect("en-eller-annen-servlet/html");

Og da setter man target="en frame" på knappen.

Da kommer problemet mitt, jeg vil ha 2 targets. En til handlekurvlista og en til infolista.

 

Mulig jeg forklarer dette veldig kronglete :roll:

Lenke til kommentar

2 servlets kan ikke kalles med en request som krigun korrekt paapeker, men for aa hacke sammen en løsning, kan vi bruke javascript, og la den ene siden oppdatere den andre naar den selv er ferdig med aa laste(hovedsiden laster handlekurv paa nytt etter den selv er ferdig med aa laste). Vil uansett anbefale deg i fremtiden aa ta en titt paa include i servlet api'en fremfor aa bruke frames.

 

<frameset cols="25%,75%">
<frame src="frame_a.html" name="frameA"/>
<frame src="frame_b.html" name="frameB"/>
</frameset>

<html>
<head><title>Frame A</title></head>
<body>
some text<br/>
</body>
</html>

<html>
<head>
<title>FrameB</title>
</head>
<body onLoad=parent.frameA.location="http://www.google.com">
Klikk for aa laste paa nytt<br/>
<a href="./frame_b.html">Klikk meg</A>
</body>
</html>

Endret av sonic boy
Lenke til kommentar

Hva med å putte all informasjon inn i en og samme side i stedet for å rote med frames?

 

Det vanlige er vel å delegere funksjonalitet til forskjellige klasser, ikke servlets, og så vise datamodellen disse bygger opp vha. jsp el.l.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...