Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    40

    Sendredirect o GetRequestDispatcher

    Salve a tutti,
    ho provato a cercare su uqesto forum, su internet, ma non ho trovato una soluzione che risolvesse i miei dubbi.
    La mia domanda può sembrare banale ma proprio non riesco a capire la differenza tra SendRedirect e GetRequestDispatcher.
    Quando uso uno a discapito dell'altro?

    Grazie mille per l'aiuto

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Sendredirect o GetRequestDispatcher

    Originariamente inviato da aerith9
    non riesco a capire la differenza tra SendRedirect e GetRequestDispatcher.
    sendRedirect() innanzitutto è di HttpServletResponse. Quando lo invochi (e la response non deve essere già stata inviata, ovviamente) esso invia al client un apposito status code (302 se non sbaglio) e header di response per indicare al client di "rivolgersi" al nuovo indirizzo specificato. Ed è il client che deve quindi preoccuparsi di effettuare la request al nuovo indirizzo.

    getRequestDispatcher() è di ServletRequest, permette di ottenere un RequestDispatcher legato ad un certo path a cui si può fare un "forward" o un "include". Ma tutto questo rimane interno al container, il client rimane all'oscuro.

    Originariamente inviato da aerith9
    Quando uso uno a discapito dell'altro?
    Molto semplice, detto con un esempio: tu digiti nel browser http://www.tuoSito.com/tuaOperazione.do (dove tuaOperazione.do è mappata ad esempio su una servlet). Se la servlet fa un sendRedirect("tuaPagina.jsp") tu vedi proprio che l'indirizzo nella barra del browser cambia in http://www.tuoSito.com/tuaPagina.jsp e quindi carica lui la pagina.
    Se fai un "forward" tramite RequestDispatcher a "tuaPagina.jsp", l'indirizzo nel browser non cambia ... semplicemente il container, internamente, "passa la palla" a tuaPagina.jsp e pertanto vedrai come risultato ciò che ha fatto questa jsp, senza che il client (browser) però sappia nulla di questo passaggio.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.