Web Services. Scoperta del servizio UDDI. Descrizione del servizio WSDL. Accesso al servizio SOAP XML. Starto di comunicazione HTTP



Documenti analoghi
Introduzione ai Web Services Alberto Polzonetti

automation using workflow technology and web services Vassilacopoulos Med. Inform. (September 2003) vol. 28, no. 3,

Seminario di Sistemi Distribuiti RPC su SOAP

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML

Reti di Calcolatori. Il Livello delle Applicazioni

Lezione 1 Introduzione

3. I Virtual Learning Environment ovvero: le piattaforme

Gestione Richieste Patenti Web

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

STUDIUM.UniCT Tutorial per gli studenti

HTML il linguaggio per creare le pagine per il web

Portale regionale della Salute. Servizi di prenotazione prestazione e pagamento ticket.

Configurazione di Outlook Express

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Lo scenario: la definizione di Internet

Reti di Telecomunicazione Lezione 8

Il sistema C.R.M. / E.R.M.

Software per Helpdesk

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO

Database. Si ringrazia Marco Bertini per le slides

Ministero del Lavoro e delle Politiche Sociali

Rappresentazione della Conoscenza. Lezione 10. Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0

COME FARE PER. ARMONIZZARE IL SITO COL SISTEMA DI GESTIONE DOCUMENTALE DELL ENTE

ESERCITAZIONE Semplice creazione di un sito Internet

Reti di Telecomunicazione Lezione 6

La serializzazione e deserializzazione nel formato SOAP. A cura del docente Giuliano Pellegrini Parisi

Il Problem-Based Learning dalla pratica alla teoria

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

Dispensa di database Access

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

object oriented analysis

Università Politecnica delle Marche. Progetto Didattico

Il Registro dei Servizi di OpenSPCoop i. Il Registro dei Servizi di OpenSPCoop

Corso di Amministrazione di Reti A.A. 2002/2003

Il Sistema di Valutazione nel Gruppo UniCredit

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.

Minerva. Un ambiente integrato per la Didattica e la Divulgazione. dr. Augusto Pifferi. dr. Guido Righini.

Informatica per la comunicazione" - lezione 10 -

Soluzione dell esercizio del 12 Febbraio 2004

NOVITÀ SITI COMMERCIALISTA

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica

Light CRM. Documento Tecnico. Descrizione delle funzionalità del servizio

MODULO PER LA GESTIONE DEI RESI

InitZero s.r.l. Via P. Calamandrei, Arezzo

Piattaforma per la realizzazione e distribuzione di corsi formativi in modalità e-learning

Appendice D. D. Web Services

Capitolo 4 Pianificazione e Sviluppo di Web Part

Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato

SERVICE BROWSER. Versione 1.0

Piattaforma elearning Lotus Quickr Guida studente alla piattaforma

Dispensa di Informatica I.1

DATABASE. A cura di Massimiliano Buschi

Guida Compilazione Piani di Studio on-line

lem logic enterprise manager

Il sistema di Kuoni Italia per prenotare On Line il Tuo Viaggio.

Il corso di italiano on-line: presentazione

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

Alfa Layer S.r.l. Via Caboto, Torino ALFA PORTAL

LA PIATTAFORMA DEL PROGETTO ORIENTAMENTO. Guida per Studente

Utilizzo della Intranet, forum privati Soci e Staff

Mattone 3 - Evoluzione del sistema DRG nazionale

3. Introduzione all'internetworking

Esercitazione di Basi di Dati

Regolamento del servizio di tutorato. (Decreto Rettorale n.35 del 12 dicembre 2008)

Standard di comunicazione

Internet. Internet. Internet Servizi e Protocolli applicativi. Internet. Organizzazione distribuita

Realizzazione di Web Service per l estrazione di informazioni da siti web enciclopedici

FPf per Windows 3.1. Guida all uso

Il Sistema Operativo

Proteggiamo il PC con il Firewall di Windows Vista

Informatica. Prof. M. Colajanni Università di Modena Reggio Emilia

<utente> <nome>mario</nome> <cognome>rossi</cognome> <saldo>1230</saldo> </utente> Tag di chiusura dato. Tag di apertura

SCENARIO. Personas ALICE Lucchin / BENITO Condemi de Felice. All rights reserved.

E-learning Guida pratica all utilizzo

Specifiche Tecnico-Funzionali

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Guida per la registrazione alla piattaforma di Gestione dei Corsi per il Consulente Tecnico Telematico

InfoWeb - Manuale d utilizzo per utente DIPENDENTE

Traccia di soluzione dell esercizio del 25/1/2005

Soluzione dell esercizio del 2 Febbraio 2004

I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA UNIVERSITÀ DEGLI STUDI DI PALERMO. Palermo 9 novembre 2011

2. GUIDA ALLA PREDISPOSIZIONE DEL DOSSIER DELLE EVIDENZE DA ESPERIENZA

Che differenza c è tra una richiesta XML ed una domanda XML? (pag. 4)

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI

02 L Informatica oggi. Dott.ssa Ramona Congiu

Architettura client-server

@2011 Politecnico di Torino. Pag. 1. Architettura distribuita. Architetture Client/Server. Architettura centralizzata. Architettura distribuita

Laboratorio di RETI DI CALCOLATORI

Guida all utilizzo a cura di Francesco Lattari. Guida all utilizzo di moodle per studenti

Guida Utente della PddConsole. Guida Utente della PddConsole

SVI Nuovo Sistema Revisioni

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte.

Reti diverse: la soluzione nativa

Restrizioni di accesso alle risorse Web

Manuale operativo - Procedura per la costruzione, la pubblicazione di questionari

*Solo software legalmente riconosciuti e registrati. Network in possesso di regolare licenza. **Disponibili network gaming Poker, Casino, Scommesse.

Guida rapida all uso di Moodle per gli studenti

B.P.S. Business Process Server ALLEGATO C10

Transcript:

Web Services I web services servono a rendere interoperabili le applicazioni e favoriscono la loro integrazione. I servizi web sono applicazioni software che possono essere scoperte, descritte e usate utilizzando XML e protocolli WEB. Possono quindi essere usati sia su intranet che su Internet. Si parla di servizi web in quanto si tratta di applicazioni che svolgono funzioni specifiche disponibili sul web. Il lingiaggio UDDI (Universal Descripition Discovery and Integration) viene usato per scoprire i servizi. Il linguaggio WSDL (Web Service Description Language) descrive il servizio e come dobbaiamo usarlo. Il linguaggio SOAP (Simple Object Access Protocol) consente l accesso al servizio. Questo tre linguaggi si basano su XML. L accesso al servizio avviene tramite il protocollo HTTP (Hypertext Transport Protocol), lo stesso protocollo che fa comunicare un browser ed un server web. Scoperta del servizio UDDI Descrizione del servizio WSDL Accesso al servizio SOAP XML Starto di comunicazione HTTP I livelli di base dei Servizi Web

Utilizzo Dei Web Service Uno scenario per l utilizzo dei Web Service è costituito dalle seguenti fasi: 1) Il programma client (quello dell utente) cerca di scoprire nel registro UDDI quale è il servizio che interessa. 2) Scoperto il servizio si usa la descrizione del servizio (WSDL) per vedere come usarlo (cioè come chiamarlo, che dati gli vanno passati e che dati il servizio restituisce). 3) Il client accede al Servizio Web passando i dati con SOAP. 4) Il servizio web elabora la richiesta e manda il risultato al client sempre usando SOAP Bisogna notare che il servizio web non si occupa dell interfaccia utente, che sarà controllata dal client, ma implementa la business logic cioè la logica dell applicazione. Sistemi eterogenei possono comunicare perchè tutti possono capire XML e gli starti superiori (SOAP, WSDL, UDDI) basati su XML. In più in servizio web può a sua volta utilizzare altri servizi web per completare il lavoro. Vediamo più in dettaglio alcuni aspetti. SOAP SOAP è la sintassi con cui si scambiano messaggi XML con il Servizio Web. SOAP è un contenitore che ha al suo interno messaggi XML che vengono scambiati con il protocollo HTTP. Il programma client invia una SOAP Request al servizio web ed il servizio replica con una SOAP Response. Il messaggio SOAP ha tre parti: Una busta (envelope) SOAP che contiene il messaggio Una intestazione (header) che descrive come sono codificati i dati Un corpo (body) SOAP che contiene il messaggio vero e proprio.

Un esempio di SOAP Request potrebbe esserequello che segue. Nel corpo si chiede il Last Trade Price (elemento <GetLastTradePrice> nel senso definito dal namespace Some-URI ) del simbolo DIS. <SOAP-ENV:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" SOAP- ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <m:getlasttradeprice xmlns:m="some-uri"> <symbol>dis</symbol> </m:getlasttradeprice> </SOAP-ENV:Body> </SOAP-ENV:Envelope> La risposta è contenuta nel SOAP Response che segue, dove nell elemento <GetLastTradePriceResponse> troviamo <Price>34.5</Price> <SOAP-ENV:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" SOAP- ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> <SOAP-ENV:Body> <m:getlasttradepriceresponse xmlns:m="some-uri"> <Price>34.5</Price> </m:getlasttradepriceresponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Descrivere i Servizi Web - WSDL WSDL descrive dove si trova il servizio, cosa fa, come va chiamato. Le descrizioni WSDL vengono create con dei toolkit da chi sviluppa i servizi. Vengono utilizzati dal client per generare (sempre in maniera automatica) i messaggi SOAP. Ci sono 3 passi. 1) lo sviluppatore del servizio produce con l ispezione del servizio stesso la descrizione WSDL 2) il client usa questa descrizione per generare (automaticamente) i messaggi SOAP 3) la comunicazione fra client e web service può avere luogo. Scoprire i Servizi Web UDDI L UDDI (Universal Description Discovery and Integration) può essere vista come una guida del telefono per i Web Services. Le organizzazioni possono rendere pubblici, in questi registri, i servizi che esse rendono disponibili. Le applicazioni possono automaticamente esaminare questi elenchi e trovare quei servizi che servono. Possiamo avere tre tipi di informazioni. - Pagine bianche con informazioni su come contattare una organizzazione. - Pagine gialle dove le organizzazioni sono elencate per categorie usando una tassonomia. - Pagine verdi che elencano i Web Services offerti dalle varie organizzazioni con i loro WSDL. I registri UDDI possono essere pubblici ed essere accessibili da Internet oppure possono servire una singola organizzazione ed essere accessibili da una intranet.

Integrare i Servizi Per realizzare applicazioni complesse si possono integrare servizi web diversi. Possiamo pensare di organizzare un viaggio. Potremmo disporre dei seguenti servizi: - Hotel Finder - Driver Direction Finder - Airline Ticket Finder - Car Rental Service - Expense Report Creator Ogni servizio può avere una sua logica interna. Prenotare l alberggo più conveniente, in una certa zona etc., affitare l auto richiesta al prezzo minore etc. In alcuni casi sarà l utente a dover prendere delle decisioni. Potrebbe succedere qualcosa del genere: 1) L Hotel Finder seleziona un certo numero di hotel nella zona e con le caratteristiche volute. 2) Si ricorrere al Driving Direction Finder per vedere quale è l hotel raggiungibile più facimelnte 3) Scelto l hotel più comodo da raggiungere si ricorre ancora all Hotel Finder per fare la prenotazione. 4) Si prenota l aereo usando l Airline Ticket Finder 5) Si prenota una auto a noleggio. 6) Infine l Expense Report Creator può essere usato per rendicontare le spese.

Applicazioni all E-Learning Nel campo dell e-learning potremmo pensare a Servizi Web che assolvano a diverse funzioni. 1) Autenticazione Lo studente ricorre a questo servizio per autenticarsi quando entra nel sistema 2) Gestione Carriera Studenti. Si identificano i dati dello studente, i corsi a cui è iscritto etc. 3) Iscrizione ai Corsi 4) Iscrizione agli Esami 5) LMS per l erogazione di materiali didattici e per il tracciamento dell attività dello studente. 6) Sitemi di valutazione e autovalutazione. 7) Sreaming di materiali multimediali. 8) Sistemi di comunicazione asincrona (forum, chat, etc.). 9) Sistemi di comunicazione sincrona (Videoconferenza, strumenti di collaborazione). GRID Computing Un GRID è una collezione di sistemi di calcolo distribuiti che possono lavorare insieme. Il GRID può essere organizzato per offrire Servizi Web con caratteristiche aggiuntive come bilanciamento del calcolo, fault-tolerance e sono adatti a firnire servizi su larga scala. Un progetto che permette risorse di GRID computing in forma di Web Services è GLOBUS (http://www.globus.org). AGENTI Gli agenti software servono a realizzare sistemi distribuiti. Gli agenti possono cooperare per eseguire dei compiti. Per cooperare gli agenti hanno bisogno di comunicare. A questo fine gli agenti si ispirano agli speech acts (atti liguistici) di Searle. Le ontologie vengono utilizzate dagli agenti per dare una semantica agli atti comunicativi. Rapporto fra Semantic Web e Web Services Per automatizzare la scoperta e l uso di servizi web è necessario aggiungere delle informazioni semantiche. Si stanno sviluppando ontologie che descivano le proprietà e le funzionalità dei servizi web. Ad esmpio uno dei linguaggi per rappresentare ontologie OWL (Ontology Web Language) proposto dal w3c ha una specializzazione chiamata OWLS dedicata alla descrizione dei servizi web.