|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Dec 2003
Messaggi: 458
|
[JAVA-JSP] oggetto implicito jsp: pageContext
ho visto in alcuni esempi come usare l'oggetto implicito
pageContext in una pagina jsp. poi ho trovato nella definizione di tale oggetto:"Un'istanza di PageContext consente di accedere a tutti gli scope JSP...inoltre,essa mette a disposizione un livello sopra i dettagli d'implementazione del container, in modo da permettere al container stesso di generare classi d'implementazione JSP portabili" fino ai puntini (e quel che non ho scritto dopo) è tutto chiaro; dalla parola 'inoltre' in poi c'è il buio totale. qualcuno mi saprebbe dire (in maniera semplice) cosa si intende nella seconda parte della definizione grazie |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
vado a intuito perchè non conosco quella classe, diciamo che aggiunge un livello di astrazione in più alle API che permettono a ogni web container di non fare riferimento a oggetti o metodi particolari per accedere agli scope JSP (che sarebbero dipendenti dall'implmentazione) ma a un'inferfaccia generale (pageContext, appunto, anche se nell'implementazione hanno scelto una classe astratta).
Così facendo una jsp compilata potrà recuperare le informazioni necessarie al suo metodo _jspService anche se il compilato (e non il .jsp) venisse spostato da un web container a un altro. E' un pattern molto comune in java. |
![]() |
![]() |
![]() |
#3 | ||
Senior Member
Iscritto dal: Dec 2003
Messaggi: 458
|
provo a interpretare quello che hai detto(io più che a intuito vado a caso
![]() Quote:
ho visto ad esempio che nella classe java generata da una jsp c'è session = pageContext.getSession();(ma forse non centra nulla) Quote:
quanon ci sono proprio; si può eseguire il compilato(insomma la servlet) anche senza che ci sia la jsp ??????(penso di no anche ma non capisco cosa vuoi dire) in che senso "Così facendo una jsp compilata potrà recuperare le informazioni necessarie al suo metodo _jspService..."? grazie e ciao Ultima modifica di prazision : 06-06-2005 alle 20:55. |
||
![]() |
![]() |
![]() |
#4 | ||
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
Quote:
La tua jsp quindi puo' girare su web container differenti senza nessuna modifica. Quote:
pagina.jsp -> paginaServlet.java -> paginaServlet.class -> ora puo' servire le richieste il metodo principale viene implementato in un metodo di paginaServlet chiamato jspService, e al suo interno vengono fatte operazioni come il recupero della servletRequest e del servletResponse e così via. Queste operazioni penso che vengano fatte sfruttando l'interfaccia di PageContext, in modo che funzioni su web container differenti (vedi precedente esempio) |
||
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Dec 2003
Messaggi: 458
|
ok forse ci sono:la classe PageContext è un'interfaccia in modo che le jsp possono limitarsi a utlizzare i suoi metodi senza dover sapere di preciso come questa interfaccia è implementata nei singoli web container, giusto?
quando dici Quote:
è invece vero che session e application vengono recuperati tramite l'interfaccia di PageContext application = pageContext.getServletContext(); session = pageContext.getSession(); forse sto dicendo baggianate... cmq grazie, ho un'idea molto più chiara ora Ultima modifica di prazision : 06-06-2005 alle 22:36. |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
no è tutto corretto.
per quanto riguarda reqest e response ho "sparato", era solo per spiegare che l'interfaccia espone metodi per recuperare oggetti necessari al funzionamento della jsp ![]() |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Dec 2003
Messaggi: 458
|
ok.graz
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:13.