2011-02-08 16 views
6

Ho un servlet (front-controller), che analizza la richiesta, prepara alcuni dati necessari (modello) e quindi deve passarlo al jsp da rendere.Come passare la variabile da un servlet a una pagina jsp?

Come devo passare i dati da servlet a jsp? (Speravo che fosse possibile aggiungere nuovi parametri alla mappa dei parametri nell'oggetto request, ma quella mappa non è modificabile).

Posso aggiungere attributi allo request ma non so come recuperarli dal jsp.

Tutti i dati devono essere inclusi nell'ambito della richiesta. Qual è il modo corretto?

+1

Ecco un mondo ciao: http://stackoverflow.com/tags/servlets/info Ci sono tra l'altro un sacco di doppioni nella sezione "Related" alla colonna di destra, che si dovrebbe già avete visto in cima alla tua domanda mentre inserisci la domanda. – BalusC

risposta

6

Posso aggiungere attributi alla richiesta ma non so come recuperarli dal jsp.
Non è necessario specificamente 'recuperare' di loro, solo loro riferendosi funziona

request.setAttribute("titleAttribute", "kittens are fuzzy"); 

e poi

Title here: ${titleAttribute} 
3

È possibile utilizzare la richiesta o l'ambito sessione per questo. Oltre alla risposta di Nikita Rybak, è possibile utilizzare

request.getSession().setAttribute("key","value"); 

E quindi utilizzarlo in JSP utilizzando lo scriplet.

<%=session.getAttribute("key")%> 

Si noti che nel esempio dato da Nikita, è stato utilizzato Expression Language (EL) (io non sono sicuro se è tag JSTL). È necessario specificare esplicitamente che EL non deve essere ignorato utilizzando la proprietà isELIgnored.

<%@ page isELIgnored="false" %> 
+1

Questo è esattamente gli esempi di codice di cui avevo bisogno per superare questa gobba - grazie! +1 – Olie

Problemi correlati