Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Home ~ Jsp :: Architettura delle JSP: come funzionano le Java Server Pages :: Indice Jsp

Architettura delle JSP: come funzionano le Java Server Pages

Categoria: Jsp Inserito il: 31-08-2005 Stampa (7051 click)

Nel capitolo introduttivo di questa guida, abbiano anticipato alcuni elementi riguardanti le regole generali che stanno alla base del funzionamento dei siti web "dinamici", sottolineando come, al di là delle specifiche proprie di ogni linguaggio, i meccanismi che hanno luogo attraverso di essi siano nella maggioranza dei casi molto simili. Alla base di tutto vi è in effetti una logica basata sul'interscambio "input/output" che non caratterizza soltanto i linguaggi di scripting server side ma il mondo dell'informatica in generale.

In questo capitolo ci concentreremo sull'architettura delle JSP e sulle dinamiche specifiche che essa mette in atto al momento della nota iterazione tra client e server che sta alla base della Rete.

Il linguaggio indispensabile per la concezione di pagine ".jsp" segue determinate specifiche che vengono messe a disposizione dalla notissima casa madre di Java la Sun, conosciuta presso il grande pubblico anche per progetti altrettanto importanti come il portale di aste on line eBay e il sistema operativo Sun Solaris. Le pagine Web create utilizzando la tecnologia per le JSP sono comuni file testuali contenenti codice di scripting server side, cioè stringhe di testo che se interpretate sono destinate a produrre determinati comportamenti, e semplici tags HTML.

Quello utilizzato per le JSP è quindi un linguaggio html embedded, cioè "immerso" e "nascosto" all'interno dei tags HTML con i quali convive ed interagisce a regola d'arte; quindi, in ogni pagina con estensione ".jsp" possiamo individuare due elementi perfettamente distinguibili: il codice "dinamico" derivante da Java e destinato ad essere interpretato e quindi processato (parser) dal Web server e, il codice client side (HTML, Javascript, CSS ...) interpretato dal browser.

Nel caso specifico, al momento dell'invocazione di una pagina ".jsp" si succederanno le fasi seguenti:

  1. Chiamata di una pagina ".jsp" tramite browser.
  2. Raccolta della chiamata da parte del Web server.
  3. Il Web server "vede" la pagina ".jsp", la riconosce e la consegna nelle mani dell'Engine JSP, ad esempio Tomcat.
  4. La pagina ".jsp" viene processata una prima volta.
  5. Il file ".jsp" viene tradotto in una classe Java e compilato in una Servlet (un'applicazione residente sul server ).
  6. Vengono chiamati i metodi init e service in modo che la pagina ".jsp" non debba subire nuovamente lo stesso processo di riconoscimento, traduzione e compilazione ad ogni nuova chiamata.
  7. La richiesta effettuata attraverso la chiamata viene soddisfatta sotto forma di un output costituito da una pagina recante codice HTML prodotto dinamicamente.
La Servlet ottenuta dalla traduzione e compilazione del codice per le JSP si avvale del metodo init, quest'ultimo viene chiamato un prima volta quando la Servlet viene caricata, da quel momento essa girerà in esecuzione sulla JVM (Java Virtual Machine) e sarà pronta a rispondere ad ogni successiva chiamata.

Init però, si occuperà soltanto di inizializzare i processi, ogni successiva chiamata del file ".jsp" sarà gestita dal metodo service.

Attenzione: Gli articoli su Tomcat presenti in questa sezione sono stati concessi in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione, anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it

Cerca nel sito
Per sito
Sviluppatore di applicazioni Web con competenze evolute nella progettazione delle basi di dati, autore per alcune delle pił importanti testate on line dedicate alla manualistica tecnica (HTML.it, MrWebmaster.it, Edit) e consulente per l'e-learning.
Tutte le categorie
Tutorial Random
Definizione di una classe e Information Hiding
Per definizione di una classe intendiamo l'atto di indicare quali saranno le caratteristiche e quali i comportamenti riferiti ad... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti