JAVA SERVLET: I filtri

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "JAVA SERVLET: I filtri"

Transcript

1 JAVA SERVLET: I filtri INTRODUZIONE Quest oggi vedremo una particolarità delle servlet che è stata introdotta nelle servlet API versione 2.3. I filtri sono un potente meccanismo che è in grado di fare quello che prima veniva fatto usando il servlet chaining (concatenamento di servlet o catene di servlet) e molto di più. Non ci fermeremo a presentare solo le caratteristiche dei filtri ma vedremo anche un esempio pratico di utilizzo. Per poter capire a fondo quello che spiegherò in questo tutorial è importante avere una buona conoscenza di Java e conoscere almeno il meccanismo generale di funzionamento delle servlet. DESCRIZIONE Quando il programmatore vuole creare un nuovo filtro da poter utilizzare all interno della propria applicazione web, non deve far altro che creare una classe che implementi l interfaccia javax.servlet.filter. Vedremo poi quali metodi bisogna implementare, nel frattempo diamo una breve descrizione del meccanismo dei filtri. Come suggerisce il nome stesso lo scopo di queste classi è quello di filtrare dei contenuti. E su quali contenuti potrebbero mai agire? Ma su richiesta e risposta naturalmente o meglio sugli oggetti che implementano le interfacce ServletRequest e ServletResponse. Definire un filtro una servlet è errato per una serie di motivi: - non creano realmente una risposta al contrario delle servlet - hanno metodi differenti rispetto alle servlet, ad esempio il metodo dofilter() - non hanno i tipici metodi doget() e dopost() delle servlet normali Lo scopo dei filtri è quello di effettuare operazioni di preprocessing delle richieste e postprocessing delle risposte: intervengono quindi prima che una richiesta raggiunga una servlet o appena dopo che una risposta esca da una servlet. Ecco un esempio di servlet che preprocessa la richiesta: Schema di funzionamento: 1) Il client invia una richiesta al server e il filtro la intercetta 2) Il filtro preprocessa la richiesta, raccogliendo eventuali informazioni 3) Il filtro richiama il metodo chain.dofilter (lo vedremo meglio dopo) per invocare la prossima servlet o il webcomponent 4) Il webcomponent invocato genera la risposta. Ecco un esempio invece di servlet che postprocessa la risposta: 1

2 Schema di funzionamento: 1) Il client invia una richiesta al server e il filtro la intercetta 2) Il filtro richiama il metodo chain.dofilter 3) Il webcomponent corrispondente risponde, generando la risposta. 4) La risposta viene intercetta dal filtro e viene processata 5) La risposta eventualmente modificata viene restituita al client Come potete vedere la possibilità di utilizzo dei filtri è amplissima basta che pensiate a tutte le cose che si potrebbero fare potendo modificare una risposta http o potendo ricavare informazioni da una richiesta http. In particolare l applicazione pratica che noi vedremo sarà un esempio di filtro di autenticazione, ossia il nostro filtro fornirà un forma di protezione da tentativi di accesso non autorizzato a certe risorse sul webserver. Altri esempi di possibile filtro: una filtro che effettua del logging con informazioni riguardo al client oppure ai tempi di elaborazione delle pagine oppure un filtro di compressione dati. Prima di andare a vedere l applicazione pratica tentiamo di dare un sguardo più da vicino ai filtri. DENTRO AI FILTRI Un filtro per essere considerato tale deve implementare l interfaccia javax.servlet.filter e di conseguenza i tre metodi ad essa associati: void init(filterconfig config): in un certo senso possiamo paragonarlo al metodo init() delle servlet. Questo metodo viene invocato dal web container (tipicamente si usa Tomcat come servlet engine) prima che il filtro possa cominciare qualsiasi tipo di operazione di filtraggio e di conseguenza viene chiamato prima del metodo dofilter. Nel metodo init() del filtro è possibile svolgere eventuali inizializzazioni di variabili o parametri d ambiente. void dofilter(servletrequest request, ServletResponse response, FilterChain chain) : questo metodo esegue tutte le operazioni necessarie. In pratica viene invocato ogni qualvolta un client fa una richiesta e quindi si hanno una coppia request/response. void destroy(): come già detto per il metodo init anche qui possiamo trovare una corrispondenza col metodo destroy delle servlet. Questo metodo viene invocato alla fine del ciclo di vita del filtro ossia quando il servlet container decide di rendere inutilizzabile l istanza del filtro o quando non ci sono più thread in esecuzione sul metodo dofilter. In questo metodo può essere inserito anche del codice per liberare risorse precedentemente impegnate e ora non più utilizzate per fare un esempio banale delle connessioni ad un database o dei file ancora aperti. Insomma il metodo destroy viene invocato in fase di chiusura del servlet container o della webapplication. Due parole in più sul metodo dofilter() il più importante/interessante di un filtro. Come si può notare dalla firma del metodo abbiamo tre argomenti. 1. ServletRequest request: è un interfaccia che definisce un oggetto generico di tipo richiesta. Tipicamente viene passata una richiesta http di conseguenza un oggetto che implementi l interfaccia javax.servlet.httpservletrequest. Quest ultima è una sottointerfaccia che estende l interfaccia javax.servlet.servletrequest: è per così dire una specializzazione dell oggetto generale di richiesta per il protocollo http. 2. ServletResponse response: vale lo stesso discorso fatto sopra per la request, solo che qui parliamo di interfaccia javax.servlet.servletresponse e di sottointerfaccia javax.servlet.httpservletresponse. 3. FilterChain chain: qui parliamo dell interfaccia javax.servlet.filterchain. In questo caso abbiamo a che fare con un oggetto creato appositamente dal servlet container per fare in modo che il programmatore possa facilmente passare il controllo sugli oggetti richiesta e risposta al prossimo filtro nella catena di filtri. Il bello dei filtri è quello di poter tranquillamente costruire una catena di filtri, ognuno dei quali esegue una parte di lavoro. Ad esempio: un filtro che fa del logging, seguito da un filtro che raccoglie informazioni sulla richiesta da parte del client (browser, os, provenienza,etc.) e infine un filtro di autenticazione che si preoccupa di controllare che il client possa effettivamente accedere alla risorsa richiesta. Quando un filtro ha terminato il proprio lavoro di preprocessing può passare il controllo al filtro successivo semplicemente chiamando il metodo FilterChain.doFilter(). Nel caso non ci siano più filtri allora viene chiamata la risorsa specificata dalla richiesta. NOTA: tutti e tre gli argomenti sono interfacce, quindi non classi e vere istanze di oggetti. E compito del servlet container passare degli oggetti corrispondenti (costruiti ad arte ) che implementino le relative interfacce. Se si vanno infatti a vedere le servlet API non si troveranno classi che implementino un vero oggetto richiesta o risposta. Le classi wrapper sono un eccezione, ma in realtà esse non sono veri oggetti richiesta o risposta. 2

3 CONFIGURAZIONE DEI FILTRI Poiché i filtri possiamo considerarli alla stregua delle servlet, anche loro devono essere configurati in maniera opportuna all interno del file web.xml per funzionare correttamente nella web application. Abbiamo già accennato all inizio di come vedremo un esempio pratico di filtro di autenticazione. Il nostro filtro si chiamerà LoginFilter: vediamo quindi come configurarlo. Parte di un ipotetico file web.xml <?xml version="1.0" encoding="iso "?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <filter> <filter-class>it.webtraffic.filters.loginfilter</filter-class> <init-param> <param-name>loginpage</param-name> <param-value>/index.htm</param-value> </init-param> </filter> <filter-mapping> <url-pattern>/statistiche/*</url-pattern> </filter-mapping> <filter-mapping> <url-pattern>/admin/*</url-pattern> </filter-mapping> </web-app> Osservazioni: 1. Le dichiarazioni dei filtri vanno fatte prima delle dichiarazioni delle servlet. 2. Le dichiarazioni dei filtri vanno fatte nell ordine che con cui si vuole costruire la catena di filtri. 3. I tag <filter></filter> permettono di dichiarare i filtri. 4. I tag <filter-name></filter-name> permettono di definire il nome-identificatore del filtro. 5. I tag <filter-class></filter-class> permettono di indicare la classe filtro. 6. I tag <init-param></init-param> e gli altri tag interni servono per specificare parametri di inizializzazione del filtro (come avviene per le servlet) che possono essere recuperate ad esempio nel metodo init(). 7. I tag <filter-mapping></filter-mapping> e gli altri tag interni servono per specificare quando un filtro deve essere invocato ossia in base a quali richieste. In particolare si specifica il nome del filtro che deve essere invocato e l url-pattern relativo. Nel nostro caso il filtro entra in azione quando arrivano richieste del tipo /admin/* o /statistiche/*. Per fare in maniera che il filtro entri in azione sempre si può specificare il pattern /*. Per farlo funzionare solo con particolari estensioni di file basta racchiudere tra i tag <url-pattern></url-pattern> l estensione dei file: ad esempio *.php o *.htm. 8. Possono essere specificati un numero arbitrario di mapping per i filtri (così come per le servlet). Bene, dopo questa breve ma esaustiva introduzione ai filtri vediamo un applicazione reale, in maniera da renderci contro delle potenzialità di questo meccanismo. IMPLEMENTAZIONE DI UN FILTRO DI AUTENTICAZIONE Progettare un filtro di autenticazione significa progettare un meccanismo che fornisca una forma di protezione di dati considerati sensibili e ai quali si vuole che accedano soltanto particolari categorie di utenti. Nella fattispecie (anche facendo riferimento all estratto di web.xml visto sopra) vogliamo che soltanto gli utenti privilegiati possano accedere a certi percorsi. Il codice java che vedrete qui sotto è stato scritto dal sottoscritto nell ambito di un progetto di laboratorio di reti che prevedeva lo sviluppo di un sistema di statistiche per l accesso ai siti web sul modello di shynistat. Il progetto è stato svolto assieme ad un altro mio collega all università, e mentre lui si occupava della parte di statistiche (elaborazione dei dati raccolti e generazione grafici) io mi sono occupato tra l altro anche del meccanismo di login/autenticazione. 3

4 Il codice java per quanto possibile rispecchierà l originale utilizzato nell applicazione web completa, e quando necessario aggiungerò commenti per aiutare la comprensione del funzionamento del filtro. /* * LoginFilter.java * Classe filtro che controlla i permessi di un client per l accesso * a determinati percorsi sul webserver. * Parte integrante dell applicazione web WEB TRAFFIC ANALYZER. */ package it.webtraffic.filters; import javax.servlet.*; import javax.servlet.http.*; import java.io.ioexception; import java.io.printwriter; import it.webtraffic.beans.admin; public class LoginFilter implements Filter { private String loginpage; public void dofilter(servletrequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { //faccio un downcast della richiesta e della risposta. HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; //recupero la sessione del client che ha effettuato la richiesta HttpSession session = req.getsession(); //tento di recuperare il bean Admin: //si tratta di un bean contenente le informazioni riguardanti l amministratore Admin administrator = (Admin) session.getattribute("admin"); if (administrator == null) { //un utente generico ha tentato di accedere ai percorsi protetti response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<head>"); out.println("<meta http-equiv=\"refresh\" content=\"2; URL=" + loginpage +"\">"); out.println("<div align='center'><h3>effettuare IL LOGIN PRIMA DI ACCEDERE AL PERCORSO SPECIFICATO...<br><br>"); out.println("redirezione alla pagina di login in corso</h3></div>"); out.close(); //ora controllo se si tratta di un amministratore semplice o avanzato. //gli amministratori avanzati hanno la possibilità anche di accedere anche ai percorsi di tipo /admin/* //il metodo getifgod() del bean ci consente di capire se si tratta di admin semplice (false) o avanzato (true) else if (req.getrequesturi().indexof("/admin")!= -1 &&!administrator.getifgod()) { //si tratta di un amministratore semplice quindi segnalo l errore. response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); out.println("<head>"); out.println("<meta http-equiv=\"refresh\" content=\"2; URL=/statistiche/statistiche/home.jsp\">"); out.println("<div align='center'><h3>impossibile ACCEDERE: NON SEI GOD ADMIN...<br><br>"); out.println("redirezione alla pagina di principale in corso</h3></div>"); out.close(); else { //nel caso le credenziali siano verificate inoltro richiesta e risposta all ipotetico prossimo filtro. chain.dofilter(req, res); /** Metodo destroy del filtro. */ public void destroy() { /** Metodo init del filtro. */ public void init(filterconfig filterconfig) throws ServletException{ //tento di recuperare il parametro loginpage che dovrebbe essere specificato nel file web.xml loginpage = "/statistiche" + filterconfig.getinitparameter("loginpage"); //se non ci riesco segnalo l errore if (loginpage == null) throw new ServletException("Init Parameter loginpage mancante: modificare il file web.xml"); 4

5 Come si può vedere il meccanismo di autenticazione implementato è piuttosto semplice ma funzionale e serve a illustrare quanto spiegato sopra. In sostanza il tutto si basa sulla presenza o meno di un attributo di sessione, un bean Admin che contiene informazioni sull eventuale amministratore. Un metodo getifgod() che ritorna un boolean inoltre ci permette di distinguere tra SIMPLE (semplice) e GOD (avanzato) ADMIN. Il grosso del lavoro viene per l appunto svolto all interno del metodo dofilter(). Il metodo destroy() risulta vuoto visto che non c è la necessità di liberare risorse, mentre nel metodo init() abbiamo tentato di recuperare il parametro di inizializzazione loginpage. CONCLUSIONI Questo è solo un esempio di come impiegare un semplice/potente meccanismo quali i filtri all interno di una web application, ora a voi divertirvi a crearne di vostri. Spero che quello che ho spiegato oggi possa avervi aiutato a scoprire un lato delle servlet che non avevate ancora analizzato. Alla prossima allora! RINGRAZIAMENTI: un particolare ringraziamento a Massimiliano Barletta, mio collega all unive col quale ho condiviso l avventura di creare il WEB TRAFFIC ANALYZER. Ci siamo aiutati a vicenda nella realizzazione del progetto che alla fine ci ha permesso di imparare molto sulle tecnologie servlet e jsp, e ci siamo incoraggiati moralmente a vicenda quando le cose sembravano non andare per il verso giusto quindi GRAZIE E AL PROSSIMO PROGETTO! NOTE AL DOCUMENTO Fonti bibliografiche: - Jason Hunter e William Crawford JAVA SERVLET PROGRAMMING seconda edizione aggiornata. - WEB TRAFFIC ANALYZER Progetto di Laboratorio di Reti anno accademico 2002/ Enterprise Java TM Technologies Tech Tips for September 19, 2002 LINK: Autore del documento: sego Permessi sul documento: l uso di questo documento è a puro scopo informativo e non a fini di lucro. Il contenuto del documento può essere usato liberamente. Nel caso utilizziate o pubblichiate sul vostro sito questo documento siete pregati di lasciarlo integro o di lasciare almeno un riferimento all autore originale. Informazioni di carattere generale: qualsiasi suggerimento o critica costruttiva è ben accetto. Se avete idee per migliorare il documento inviatemi pure una mail. La segnalazione di errori o disattenzioni è altresì ben accetta. sego(owner/webmaster of the-skulls.com) indirizzo di posta elettronica: sito web di riferimento: 5

Servlet API. Programmazione in Ambienti Distribuiti A.A. 2003-04

Servlet API. Programmazione in Ambienti Distribuiti A.A. 2003-04 Servlet API Programmazione in Ambienti Distribuiti A.A. 2003-04 Servlet Interfaccia Java che modella il paradigma richiesta/elaborazione/risposta tipico delle applicazioni lato server Presuppone l esistenza

Dettagli

Note pratiche sullo sviluppo di servlet (I)

Note pratiche sullo sviluppo di servlet (I) Note pratiche sullo sviluppo di servlet (I) Nel caso in cui sulla macchina locale (PC in laboratorio/pc a casa/portatile) ci sia a disposizione un ambiente Java (con compilatore) e un editor/ambiente di

Dettagli

Programmazione server-side: Java Servlet

Programmazione server-side: Java Servlet Programmazione server-side: Java Servlet Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.11 parte II Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Cos

Dettagli

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi Applicazioni web Parte 6 Java Alberto Ferrari 1 Sommario Introduzione alle API ed esempi Tomcat Server per applicazioni web Alberto Ferrari 2 Alberto Ferrari 1 Java: da applet a servlet In origine Java

Dettagli

Tener traccia del client

Tener traccia del client Tener traccia del client Raramente un applicazione web è costituita da una singola pagina (risorsa). E utile quindi tener traccia dei client che si collegano per rendere più semplice lo sviluppo dell applicazione.

Dettagli

I file WAR. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1

I file WAR. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1 I file WAR WAR è una contrazione di Web ARchive. I file WAR consentono di archiviare un intera applicazione web in un unico file. Tomcat fornisce (tramite il Tomcat Manager) un interfaccia grafica per

Dettagli

Server-side Programming: Java servlets Parte II

Server-side Programming: Java servlets Parte II Corso di Laurea Specialistica in Ingegneria Informatica Corso di Laurea Specialistica in Ingegneria delle Telecomunicazioni Corso di Reti di Applicazioni Telematiche a.a. 2009-2010 Server-side Programming:

Dettagli

Introduzione alla programmazione Http lato server in Java

Introduzione alla programmazione Http lato server in Java Introduzione alla programmazione Http lato server in Java Tito Flagella Laboratorio Applicazioni Internet - Università di Pisa Slide API Java Titleper il Protocollo Http Programmazione Client java.net.url

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE: Java Servlet Parte a versione 3.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE: Struttura dell Applicazione versione 2.4 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

SERVLET & JSP DISPENSE

SERVLET & JSP DISPENSE SERVLET & JSP DISPENSE PROGRAMMAZIONE LATO SERVER Un server deve rispondere alle richieste del client e permettere di visualizzare le pagine Web. Questo compito è svolto da un software ben definito, il

Dettagli

Tomcat & Servlet. Contenuti. Programmazione in Ambienti Distribuiti. Tomcat Applicazioni Web. Servlet JSP Uso delle sessioni

Tomcat & Servlet. Contenuti. Programmazione in Ambienti Distribuiti. Tomcat Applicazioni Web. Servlet JSP Uso delle sessioni Tomcat & Servlet Programmazione in Ambienti Distribuiti V 1.2 Marco Torchiano 2005 Contenuti Tomcat Applicazioni Web Struttura Sviluppo Deployment Servlet JSP Uso delle sessioni 1 Tomcat Tomcat è un contenitore

Dettagli

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. Servlet e Web Server. Richieste. Servlet. Servlet:

Servlet e JDBC. Servlet e Web Server. Servlet e Web Server. Servlet e Web Server. Richieste. Servlet. Servlet: e JDBC Programmazione in Rete e Laboratorio Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino C.so Svizzera, 185 I-10149 Torino e : estensioni del Java API permettono di scrivere

Dettagli

Architetture Web: un ripasso

Architetture Web: un ripasso Architetture Web: un ripasso Pubblicazione dinamica di contenuti. Come si fa? CGI Java Servlet Server-side scripting e librerie di tag JSP Tag eseguiti lato server Revisione critica di HTTP HTTP non prevede

Dettagli

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Http con java, URL

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Http con java, URL Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Http con java, URL Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei - Tecnologie

Dettagli

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Ivan Scagnetto Dipartimento di Matematica e Informatica http://www.dimi.uniud.it/scagnett scagnett@dimi.uniud.it Laboratorio di Tecnologie Lato

Dettagli

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB.

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Web Server TOMCAT Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei - Tecnologie

Dettagli

Gestire le sessioni con le Servlet

Gestire le sessioni con le Servlet PROGETTO Gestire le sessioni con le Servlet Con il termine sessione si intende un insieme di attività correlate, con una o alcune di queste che sono preliminari ad altre. Si pensi, per esempio, a un qualsiasi

Dettagli

Laboratorio di sistemi Prima Web Application JSP [Java]

Laboratorio di sistemi Prima Web Application JSP [Java] Vogliamo scrivere la nostra prima web application che legga da tastiera il nostro nome e fornisca un messaggio di saluto. Per costruire la nostra applicazione creiamo con NetBeans un nuovo progetto. File

Dettagli

Svantaggi delle servlet

Svantaggi delle servlet Svantaggi delle servlet Le servlet sono la tecnologia principale di J2EE per comunicare con i browser dei client. Tuttavia ci sono degli inconvenienti per gli sviluppatori di applicazioni web: le servlet

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA Elaborato di Tecnologie del Software per Internet JMSWEB 2 SISTEMA PER LO SCAMBIO DI MESSAGGI TRA APPLICAZIONI

Dettagli

Lezione di Basi di Dati 1 18/11/2008 - TECNOLOGIE PER IL WEB: CGI - AJAX SERVLETS & JSP

Lezione di Basi di Dati 1 18/11/2008 - TECNOLOGIE PER IL WEB: CGI - AJAX SERVLETS & JSP EVOLUZIONE DEL WEB: PAGINE STATICHE vs PAGINE DINAMICHE Il Web è nato a supporto dei fisici, perché potessero scambiare tra loro le informazioni inerenti le loro sperimentazioni. L HTTP è nato inizialmente

Dettagli

Osservazioni. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2005/06-1

Osservazioni. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2005/06-1 Osservazioni Nell esempio della precedente lezione del contatore di accessi persistente il nome del file in cui memorizzare il numero di hit ed il valore iniziale del contatore sono codificati direttamente

Dettagli

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition

Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Sviluppo di Applicazioni Web con Java 2 Enterprise Edition Ivan Scagnetto Dipartimento di Matematica e Informatica http://www.dimi.uniud.it/scagnett scagnett@dimi.uniud.it Laboratorio di Tecnologie Lato

Dettagli

Framework di Middleware. per Architetture Enterprise

Framework di Middleware. per Architetture Enterprise Framework di Middleware per Architetture Enterprise Corso di Ingegneria del Software A.A.2011-2012 Un po di storia 1998: Sun Microsystem comprende l importanza del World Wide Web come possibile interfaccia

Dettagli

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Avvertenze: e severamente vietato consultare libri e appunti; chiunque verrà trovato in possesso di

Dettagli

Corso di Applicazioni Telematiche

Corso di Applicazioni Telematiche Corso di Applicazioni Telematiche A.A. 2008-09 Lezione n.12 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Una Servlet è un componente software scritto in Java,

Dettagli

Capitolo 7. Sviluppi futuri. 7.1 Generazione automatica di pagine WML

Capitolo 7. Sviluppi futuri. 7.1 Generazione automatica di pagine WML Capitolo 7 Sviluppi futuri 7.1 Generazione automatica di pagine WML Con l avvento della tecnologia WAP/WML abbiamo constatato la necessità di avere a disposizione uno strumento che consenta, così come

Dettagli

Laboratorio di Basi di Dati e Web

Laboratorio di Basi di Dati e Web Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 8 Java Server Pages Java Server Pages è essenzialmente un modo più comodo per il programmatore dell applicazione web di scrivere una Servlet.

Dettagli

Java Server Pages. Corso di Applicazioni Telematiche. A.A. 2006-07 Lezione n.18 Prof. Roberto Canonico

Java Server Pages. Corso di Applicazioni Telematiche. A.A. 2006-07 Lezione n.18 Prof. Roberto Canonico Java Server Pages Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.18 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Java Server Pages (JSP) Java Server

Dettagli

Introduzione al linguaggio Java: Servlet e JSP

Introduzione al linguaggio Java: Servlet e JSP Introduzione al linguaggio Java: Servlet e JSP Corso di Gestione della Conoscenza d Impresa A. A. 2006/2007 Dipartimento di Informatica Università degli Studi di Bari 1 Servlet e JSP: il contesto Un applicazione

Dettagli

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida Breve introduzione curata da Alessandro Benedetti Struts2-Introduzione e breve guida 22-11- 2008 1 Struts 2 Costruisci,attiva e mantieni! Apache Struts 2 è un framework elegante ed estensibile per creare

Dettagli

APPENDICE A Servlet e Java Server Page

APPENDICE A Servlet e Java Server Page APPENDICE A Servlet e Java Server Page A.1 Cosa è una Servlet e come funziona Una servlet è un particolare tipo di applicazione Java, in grado di essere eseguita all'interno di un web server e di estenderne

Dettagli

Il Protocollo HTTP e la programmazione di estensioni Web

Il Protocollo HTTP e la programmazione di estensioni Web Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);

Dettagli

Progetto di Gestione Documenti in Ambiente Web

Progetto di Gestione Documenti in Ambiente Web Progetto di Gestione Documenti in Ambiente Web Sessione Febbraio 2013 Marco Taddei 726523 Federico Valentini 726584 Il progetto SharesShop simula un portale web di una banca che mette a disposizione dei

Dettagli

Laboratorio di Basi di Dati e Web

Laboratorio di Basi di Dati e Web Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 6 Servlet Servlet: classi java che estendono le funzionalità di un server Web generando dinamicamente le pagine Web. Riferimento: http://java.sun.com/products/servlets

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Framework per il Modello 2 it.unibas.pinco versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Laboratorio di Basi di dati

Laboratorio di Basi di dati Laboratorio di Basi di dati Docente: Alberto Belussi Lezione 6 Servlet Servlet: classi java che estendono le funzionalità di un server Web generando dinamicamente le pagine Web. Riferimento: http://www.oracle.com/technetwork/java/javaee/servlet/index.html

Dettagli

SWIM v2 Design Document

SWIM v2 Design Document PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback

Dettagli

Spring WS Sviluppare WebService in Java

Spring WS Sviluppare WebService in Java Spring WS Sviluppare WebService in Java 1.1 Introduzione Nell ambito della programmazione Java è particolarmente utile avere una certa familiarità con i WebService e la tecnologia che li supporta. In particolare

Dettagli

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti 13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/

Dettagli

1 http://desvino.altervista.org JSPDynPage, componenti portale e Java Server Pages

1 http://desvino.altervista.org JSPDynPage, componenti portale e Java Server Pages 1 http://desvino.altervista.org JSPDynPage, componenti portale e Java Server Pages Le JSP DynPages sono un utile strumento, fornito da SAP Netweaver, per una gestione più evoluta di event handling e session

Dettagli

Laboratorio di reti II: Java Server Pages

Laboratorio di reti II: Java Server Pages Laboratorio di reti II: Java Server Pages Stefano Brocchi brocchi@dsi.unifi.it 6 aprile, 2009 Stefano Brocchi Laboratorio di reti II: Java Server Pages 6 aprile, 2009 1 / 34 JSP - Java Server Pages Le

Dettagli

Laboratorio di reti II: Servlet

Laboratorio di reti II: Servlet Laboratorio di reti II: Servlet Stefano Brocchi brocchi@dsi.unifi.it 16 marzo, 2009 Stefano Brocchi Laboratorio di reti II: Servlet 16 marzo, 2009 1 / 34 Le servlet Una servlet è una classe Java eseguita

Dettagli

Trasformare una Java (Console) Application in una Web Application (con utilizzo di un database MySQL)

Trasformare una Java (Console) Application in una Web Application (con utilizzo di un database MySQL) Pag. 1/12 Trasformare una Java (Console) Application in una Web Application (con utilizzo di un database MySQL) Prendiamo in esame un qualsiasi progetto NetBeans tra quelli studiati che fa uso di un database

Dettagli

Tutorial web Application

Tutorial web Application Tutorial web Application Installazione della JDK: Java viene distribuito con la jdk e il jre acronimi di Java Development Kit e Java Runtime Environment rispettivamente. La jdk è l'ambiente di sviluppo

Dettagli

Tomcat struttura delle directory

Tomcat struttura delle directory Tomcat struttura delle directory $CATALINA_HOME (oppure $TOMCAT_HOME): rappresenta la directory radice dell installazione di Tomcat e contiene le seguenti directory: bin common (lib nelle versioni più

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 9 Architettura Model-View-Controller (MVC) Adottando l'architettura MVC e la tecnologia Servlet-JSP, un'applicazione web può essere realizzata

Dettagli

Oggetto: MASTER DI ALTA FORMAZIONE PROFESSIONALE IN PROGRAMMATORE JAVA PARTECIPAZIONE GRATUITA

Oggetto: MASTER DI ALTA FORMAZIONE PROFESSIONALE IN PROGRAMMATORE JAVA PARTECIPAZIONE GRATUITA Oggetto: MASTER DI ALTA FORMAZIONE PROFESSIONALE IN PROGRAMMATORE JAVA PARTECIPAZIONE GRATUITA Salerno Formazione, società operante nel settore della didattica, della formazione professionale e certificata

Dettagli

JUG Ancona Italy. Andrea Del Bene. Jug Marche

JUG Ancona Italy. Andrea Del Bene. Jug Marche JUG Ancona Italy SpringMVC AndreaDelBene JugMarche Cos'èSpringMVC? Spring MVC è il sotto-framework di Spring che permetti di servirsi del Framework Spring per realizzare applicazioni web. Possiamo quindi

Dettagli

Flavio De Paoli depaoli@disco.unimib.it

Flavio De Paoli depaoli@disco.unimib.it Flavio De Paoli depaoli@disco.unimib.it 1 Il web come architettura di riferimento Architettura di una applicazione web Tecnologie lato server: Script (PHP, Pyton, Perl), Servlet/JSP, ASP Tecnologie lato

Dettagli

Primi passi con Apache Tomcat. L application server dell Apache group

Primi passi con Apache Tomcat. L application server dell Apache group Primi passi con Apache Tomcat L application server dell Apache group 2 J2EE Direttive Sun Microsystem Che cos è un application server EJB Maggiori application server open source 3 Tomcat Open Source e

Dettagli

PHP e Java ovvero come poter sfruttare entrambi i linguaggi e vivere felici... forse

PHP e Java ovvero come poter sfruttare entrambi i linguaggi e vivere felici... forse PHP e Java ovvero come poter sfruttare entrambi i linguaggi e vivere felici... forse Relatore: Matteo Baccan matteo@baccan.it Data: Roma 24/1/2009 Target: Programmatori PHP, Java e semplici curiosi Difficoltà:

Dettagli

Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. **********

Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. ********** Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. ********** Prime nozioni: Tag e prima pagina, continuazione. Nota bene, al fine di avere anche

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

Progetto di reti di Calcolatori e Sistemi Informatici

Progetto di reti di Calcolatori e Sistemi Informatici Progetto di reti di Calcolatori e Sistemi Informatici Stefano Millozzi 1 Servlet 2 Servlet Tecnologia Java per estendere le funzionalità di un server [web] indipendenti dalla piattaforma portabili senza

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Introduzione a Servlet e Struts 2 Ing. Giuseppe D'Aquì 1 Testi Consigliati Java Enterprise in a nutshell, 3 rd edition (O'Reilly) Struts 2 in Action Brown, Davis, Stanlick

Dettagli

Database & WWW. Basi di dati Architetture e linee di evoluzione P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone

Database & WWW. Basi di dati Architetture e linee di evoluzione P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Database & WWW Capitolo 4 Basi di dati Architetture e linee di evoluzione P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone 1 Sommario Protocollo HTTP CGI Java Servlet Server-side scripting

Dettagli

Accesso Web a Data Base

Accesso Web a Data Base Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Accesso Web a Data Base Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei -

Dettagli

Architetture Web parte 2

Architetture Web parte 2 Architetture Web parte 2 Programmazione in Ambienti Distribuiti A.A. 2004-05 Sessione Un insieme di richieste, provenienti dallo stesso browser e dirette allo stesso server, confinate in un dato lasso

Dettagli

Session tracking Session tracking HTTP: è stateless, cioè non permette di associare una sequenza di richieste ad un dato utente. Ciò vuol dire che, in generale, se un browser richiede una specifica pagina

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

Informatica. Prof. A. Longheu. Introduzione ai Linguaggi Object-Oriented

Informatica. Prof. A. Longheu. Introduzione ai Linguaggi Object-Oriented Informatica Prof. A. Longheu Introduzione ai Linguaggi Object-Oriented 1 Generalità programmazione OO La programmazione ad oggetti è un particolare modo di scrivere il programma. Si prevede che: 1) si

Dettagli

JavaServer Pages: Introduzione

JavaServer Pages: Introduzione JavaServer Pages: Introduzione Gianluca Moro gianluca.moro@unibo.it Dipartimento di Elettronica, Informatica e Sistemistica Università di Bologna Sistemi reali in JSP!! ofoto.com: stampa e gestisce foto

Dettagli

Architetture Web I Server Web e gli Standard della Comunicazione

Architetture Web I Server Web e gli Standard della Comunicazione Architetture Web I Server Web e gli Standard della Comunicazione Alessandro Martinelli alessandro.martinelli@unipv.it 27 Marzo 2012 Architetture Architetture Web Protocolli di Comunicazione Il Client Side

Dettagli

Tomcat. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1

Tomcat. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1 Tomcat E uno dei servlet engine più diffusi. Può funzionare sia come prodotto standalone, sia come modulo del web server Apache. Disponibile gratuitamente (per molti sistemi operativi tra cui Linux e Windows)

Dettagli

Central Authen:ca:on Service

Central Authen:ca:on Service Central Authen:ca:on Service 9 maggio 2009 proprietà riservata ws webscience srl 2008 1 Introduzione CAS: Central Authen:ca:on Service Sistema di auten:cazione centralizzato per l'implementazione del Single

Dettagli

Protocolli e architetture per WIS

Protocolli e architetture per WIS Protocolli e architetture per WIS Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di informazioni e servizi Le architetture moderne dei WIS

Dettagli

Applicazioni web. Parte 2 JSP. Michele Tomaiuolo tomamic@ce.unipr.it

Applicazioni web. Parte 2 JSP. Michele Tomaiuolo tomamic@ce.unipr.it Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Applicazioni web Parte 2 JSP Michele Tomaiuolo tomamic@ce.unipr.it Sommario JSP: sintassi di

Dettagli

Strutture di accesso ai dati

Strutture di accesso ai dati Strutture di accesso ai dati 1 A L B E R T O B E L U S S I P A R T E I I A N N O A C C A D E M I C O 2 0 1 0-2 0 1 1 Gestore dei metodi di accesso 2 E il modulo del DBMS che trasforma il piano di esecuzione

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet

1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet 1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet Controllo dell utente connesso al sito tramite JSP, Java Beans e Servlet. Ciò che ci proponiamo di fare è l accesso

Dettagli

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008 Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 6 Corso di Tecniche di programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Le tecnologie software Internet

Le tecnologie software Internet Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B B2_1 V1.7 Le tecnologie software Internet Standard aperti / Sun Java Il contenuto del documento è liberamente utilizzabile dagli studenti,

Dettagli

JUG Ancona Italy Spring Framework

JUG Ancona Italy Spring Framework JUG Ancona Italy Spring Framework Andrea Del Bene Jug Marche Spring: perché e nato e perché lo voglio imparare? Quando si decide di investire in un nuova tecnologia è indispensabile capire il valore aggiunto

Dettagli

LABORATORIO PER IL DESIGN DELLE INTERFACCE PEGORARO ALESSANDRO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO

LABORATORIO PER IL DESIGN DELLE INTERFACCE PEGORARO ALESSANDRO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO 1 Installazione e requisiti per il corretto funzionamento del sito: L istallazione è possibile sui più diffusi sistemi operativi. Il pacchetto

Dettagli

Corso di Informatica Modulo T3 B1 Programmazione web

Corso di Informatica Modulo T3 B1 Programmazione web Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo

Dettagli

Uno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti:

Uno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti: Javadoc Uno dei pregi di Java è quello di integrare la documentazione con il codice stesso Formato dei commenti: /* commenti */ // commenti /** commenti documentazione */ Questi ultimi generano automaticamente

Dettagli

10 - Programmare con gli Array

10 - Programmare con gli Array 10 - Programmare con gli Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

Il programmatore che c e in noi Lezione 16 Ingrassare e dimagrire a piacimento

Il programmatore che c e in noi Lezione 16 Ingrassare e dimagrire a piacimento Il programmatore che c e in noi Lezione 16 Ingrassare e dimagrire a piacimento Sara che ho bevuto tre bicchieri di Barbera d Asti Cascina Ferro (scusate la soletta pubblicitaria), sara che arrivo da una

Dettagli

GUIDA INSERIMENTO ARTICOLI SUL BLOG PCFACTORY.IT

GUIDA INSERIMENTO ARTICOLI SUL BLOG PCFACTORY.IT GUIDA INSERIMENTO ARTICOLI SUL BLOG PCFACTORY.IT Con questa guida non voglio insegnarvi a inserire degli articoli su un blog, ma solo mostrarvi come faccio io, quindi iniziamo: Fate il Login inserendo

Dettagli

Realizzazione di una chat su protocollo HTTP

Realizzazione di una chat su protocollo HTTP Università di Pisa Università di Pisa Percorsi Abilitanti Speciali (PAS) Percorsi Abilitanti Speciali (PAS) Realizzazione di una chat su protocollo HTTP Realizzazione di una chat su protocollo HTTP Feo

Dettagli

INSTALLAZIONE JOOMLA SU SPAZIO WEB FREE ALTERVISTA

INSTALLAZIONE JOOMLA SU SPAZIO WEB FREE ALTERVISTA INSTALLAZIONE JOOMLA SU SPAZIO WEB FREE ALTERVISTA Questa vuole essere una breve tutorial su come installare Joomla su uno spazio Web gratuito, in particolare faremo riferimento ai sottodomini gratuitamente

Dettagli

Design Patterns. Sommario. Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 1. Design Patterns DIB 2

Design Patterns. Sommario. Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 1. Design Patterns DIB 2 DIB 1 Sommario Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 2 Architettura a 3 Livelli DIB 3 Architettura a 3 Livelli Presentazione Gestione dell interazione degli

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione XML: JDOM versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G.

Dettagli

Le tecnologie software Internet

Le tecnologie software Internet Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B Paolo Salvaneschi B2_1 V1.7 Le tecnologie software Internet Standard aperti / Sun Java Il contenuto del documento è liberamente utilizzabile

Dettagli

Java Server Pages (JSP) JSP o Servlet? Java Server Pages (JSP) Java Server Pages Costituiscono un estensione della tecnologia delle servlet

Java Server Pages (JSP) JSP o Servlet? Java Server Pages (JSP) Java Server Pages Costituiscono un estensione della tecnologia delle servlet Java Server Pages (JSP) Introduzione alle JSP Linguaggio di scripting lato server HTML-embedded Una pagina JSP contiene sia HTML sia codice Il client effettua la richiesta per la pagina JSP La parte HTML

Dettagli

Tipi fondamentali di documenti web

Tipi fondamentali di documenti web Tipi fondamentali di documenti web Statici. File associati al web server il cui contenuto non cambia. Tutte le richieste di accesso conducano alla visualizzazione della stessa informazione. Dinamici. Non

Dettagli

1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org

1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org 1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org Applicazione J2EE sul SAP WAS con SAP NWDS. Il SAP Web Application Server fornisce un framework integrato per lo sviluppo e l

Dettagli

Porting Su Hostingjava

Porting Su Hostingjava Porting Su Hostingjava Consigli per il caricamento di una propria applicazione su hostingjava Il porting è una operazione con cui un programma, sviluppato originariamente per una piattaforma, viene"ritoccato"

Dettagli

Tomcat. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2006/07-1

Tomcat. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2006/07-1 Tomcat E uno dei servlet engine più diffusi. Può funzionare sia come prodotto stand-alone, sia come modulo del web server Apache. Disponibile gratuitamente (per molti sistemi operativi tra cui Linux, Windows,

Dettagli

MANUALE UTENTE SRTY SISTEMA INFORMATIVO SANITARIO SRTY MANUALE UTENTE. Contratto:

MANUALE UTENTE SRTY SISTEMA INFORMATIVO SANITARIO SRTY MANUALE UTENTE. Contratto: Contratto: Contratto del 23/04/2002 (Rep. 6253/Raccolta 1966), per l affidamento dell espletamento dei Servizi Informatici per la progettazione, realizzazione e manutenzione di prodotti software per il

Dettagli

Corso html 5. Di Roberto Abutzu. `***********` Ottava parte: I link, seconda parte. `**********` I link, seconda parte.

Corso html 5. Di Roberto Abutzu. `***********` Ottava parte: I link, seconda parte. `**********` I link, seconda parte. Corso html 5. Di Roberto Abutzu. `***********` Ottava parte: I link, seconda parte. `**********` I link, seconda parte. Continuiamo la parte che completerà la trattazione dei link, andando ad operare direttamente

Dettagli

Single Sign On sul web

Single Sign On sul web Single Sign On sul web Abstract Un Sigle Sign On (SSO) è un sistema di autenticazione centralizzata che consente a un utente di fornire le proprie credenziali una sola volta e di accedere a molteplici

Dettagli

DISISCRIZIONE DA UN CORSO E DISISCRIZIONE DA UN FORUM

DISISCRIZIONE DA UN CORSO E DISISCRIZIONE DA UN FORUM DISISCRIZIONE DA UN CORSO E DISISCRIZIONE DA UN FORUM di Matteo Baldoni e Franco Sirovich La problematica su cui vogliamo attirare la vostra attenzione, perché è richiesta azione da parte degli utilizzatori

Dettagli

Visualizzazione ordini in MyShopDB

Visualizzazione ordini in MyShopDB Visualizzazione ordini in MyShopDB Risolviamo gli esercizi della lezione scorsa, scrivendo una pagina ordini.jsp che visualizzi le intestazioni di ogni ordine (numero d ordine, data, nome, cognome, indirizzo,

Dettagli

Corso Android Corso Online Sviluppo su Cellulari con Android

Corso Android Corso Online Sviluppo su Cellulari con Android Corso Android Corso Online Sviluppo su Cellulari con Android Accademia Futuro info@accademiafuturo.it Programma Generale del Corso di Sviluppo su Cellulari con Android Programma Base Modulo Uno - Programmazione

Dettagli

RMI Remote Method Invocation

RMI Remote Method Invocation RMI Remote Method Invocation [Pagina intenzionalmente vuota] (1 12 2004) slide 4:1/18 (p.106) Un applicazione RMI è un applicazione distribuita ad oggetti. Applicazione RMI tipica, strutturata in: server:

Dettagli