Corso di Applicazioni Telematiche

Размер: px
Начинать показ со страницы:

Download "Corso di Applicazioni Telematiche"

Транскрипт

1 Service Oriented Architectures e Web Services Corso di Applicazioni Telematiche A.A Prof. Simon Pietro Romano Università degli Studi di Napoli Federico II Facoltà di Ingegneria

2 Cos è un Web Service? L evoluzione delle tecnologie Internet ha due obiettivi principali: soddisfare i bisogni degli utenti integrare sistemi informativi eterogenei e sempre più complessi Web Service: componenti software distribuiti ed accoppiati in modo lasco forniscono un servizio ben definito servizio inteso non necessariamente come un servizio finale, ma come un componente indipendente che può essere usato per fornire un servizio finale sono accessibili da programmi mediante protocolli Internet standard

3 Web Services secondo il W3C Software applications identified by a URI, whose interface and bindings are capable of being identified, described and discovered by XML artifacts and supports direct interactions with other software applications using XML based messages via Internetbased protocls (W3C).

4 Web Service: definizioni Componenti per la programmazione web: auto-contenuti, auto-descrittivi, modulari possono essere, sempre tramite interazioni basate sul web: pubblicati localizzati invocati

5 Caratteristiche dei Web Service Riutilizzabili Indipendenti da: piattaforma (Unix, Windows, Mac, ) implementazione (VB, C#, Java,...) architettura sottostante (.NET, J2EE, ) Accessibili mediante un interfaccia standard auto-descrittiva Combinano opportunamente: lo sviluppo basato sui componenti gli standard web

6 Service Oriented Architecture (SOA) I WS si basano sulla cosiddetta Service Oriented Architecture (SOA) Tre componenti principali: 1. Service Provider rende disponibile il servizio e pubblica il contratto che ne descrive l interfaccia, tramite un apposita entità detta Broker 2. Service Requestor o Consumer invia richieste al service broker; quest ultimo cerca il servizio compatibile 3. Service Registry o Broker fornisce informazioni al consumer riguardo quale servizio utilizzare (ivi compresa la sua localizzazione)

7 Scenario di richiesta di un servizio Ricerca di un servizio Richiesta al registro Link verso il servizio Registro Client Descrizione Richiesta della descrizione del servizio Descrizione del servizio Invocazione del servizio Chiamate Service Risposte

8 WS: non così nuovi Sun RPC (Remote Procedure Call) 1985 CORBA (Common Object Resource Broker) 1992 DCE/RPC 1993 Microsoft COM 1993 Microsoft DCOM 1996 Java RMI (Remote Method Invocation) 1996

9 ma comunque diversi! Neutrali rispetto alla piattaforma Basati su standard aperti Interoperabili Basati sull impiego di componenti software ampiamente diffusi parser XML server HTTP

10 Web Services: ruoli ed interazioni Service Service Provider Service Registry Find Service User

11 Web Services: architettura Interazione: SOAP Dati: XML Service Provider Comunicazione: HTTP Service Broker UDDI/WSDL Find Service User

12 Web Services: scenario tipico di interazione Il Provider crea e definisce il servizio utilizzando il linguaggio WSDL (Web Services Description Language) Il Provider registra il servizio tramite UDDI (Universal Description Discovery and Integration) L utente trova il servizio effettuando una ricerca nel registro UDDI L applicazione utente: si collega ( binding ) al Web Service invoca le operazioni da esso definite, tramite il protocollo SOAP (Simple Object Access Protocol)

13 Stack di tecnologie per i web services UDDI (Universal Description, Discovery and Integration): le pagine gialle dei servizi Web WSDL (Web Services Description Language): descrizione dei messaggi SOAP (Simple Object Access Protocol): protocollo per lo scambio di messaggi XML (extensible Markup Language): formato per lo scambio dei dati Emerging layers UDDI WSDL SOAP Internet Protocols (HTTP, FTP,...)

14 Web Services: protocolli Web Service Consumer Find a Service Link to discovery document Discovery HTML with link to WSDL How do we talk? (WSDL) return service descriptions (XML) Let me talk to you (SOAP) return service response (XML) UDDI Web Service

15 Servizi di comunicazione e trasporto Strato di trasporto: XML è usato per descrivere la struttura dei messaggi scambiati tra servizi Web Il messaggio è costituito da: l identificativo il destinatario una lista di argomenti eventuali il nome dell operazione invocata una lista di valori di ritorno attesi altri parametri SOAP HTTP TCP/IP Transport

16 Trasporto HTTP, con il metodo POST, è il più comune ma è possibile: utilizzare HTTP, con il metodo GET adoperare altri protocolli classici FTP SMTP adoperare altri protocolli di nuova generazione: Jabber (XMPP) BEEP

17 SOAP Un protocollo basato su XML e tipicamente incapsulato in HTTP Costituito da: un involucro esterno per descrivere: ciò che c è in un messaggio come processare il messaggio un insieme di regole di codifica per rappresentare istanze di tipi di dati definiti a livello applicativo una convenzione per rappresentare chiamate a procedure remote, insieme alle relative risposte

18 Messaggio SOAP La struttura dei messaggi SOAP la busta l header Il corpo del messaggio Busta SOAP <SOAP:Envelope xmlns:soap=" Header SOAP <SOAP:Header> <example:header xmlns:example=" </SOAP:Header> Corpo del messaggio SOAP <SOAP:Body> <example:body xmlns:example=" </SOAP:Body> </SOAP:Envelope>

19 Schema della comunicazione SOAP Applicazione Client XML API Client SOAP HTTP API HTTP XML API Server SOAP HTTP API Applicazione Server

20 Chiamata al metodo remoto CLIENT Stack a=5 b=6 SERVER Stack a=5 b=6 SOAP XML <a>5 </a> <b>6 </b> HTTP SOAP

21 Invio del messaggio di risposta CLIENT Stack Result=30 SERVER Stack Result = 30 SOAP XML <Result> 30 </Result> HTTP SOAP

22 Esempio di richiesta SOAP POST /AT-WebServicesSample2/services/DayOfWeekPort HTTP/1.0 Content-Type: text/xml; charset=utf-8 Accept: application/soap+xml, application/dime, multipart/related, text/* User-Agent: Axis/1.4 Host: localhost:8080 Cache-Control: no-cache Pragma: no-cache SOAPAction: "getdayofweek" Content-Length: 304 <?xml version="1.0" encoding="utf-8" standalone="no"?> <soapenv:envelope xmlns:soapenv=" xmlns:xsd=" xmlns:xsi=" <soapenv:body> <date xsi:type="xsd:date"> </date> </soapenv:body> </soapenv:envelope>

23 Esempio di risposta SOAP HTTP/ OK Server: Apache-Coyote/1.1 Content-Type: text/xml;charset=utf-8 Date: Mon, 12 Apr :56:35 GMT Connection: close <?xml version="1.0" encoding="utf-8" standalone="no"?> <soapenv:envelope xmlns:soapenv=" " xmlns:xsd=" xmlns:xsi=" <soapenv:body> <dayofweek>ok ciccio...the day is a : Monday</dayOfWeek> </soapenv:body> </soapenv:envelope>

24 WSDL Documento XML che contiene la descrizione dell interazione client-server Un documento WSDL completo deve dare due tipi di informazioni: Descrizione del servizio di livello applicativo (interfaccia astratta) Vocabolario Messaggi Interazioni Dettagli dipendenti dal protocollo specifico quale protocollo di comunicazione usare: es. SOAP su HTTP tipi di interazione su questo protocollo endpoint (indirizzo di rete)

25 WSDL: struttura Tipi: definizione dei tipi di dati del Web Service (uso di XMLSchema) Messaggio: definizione dei messaggi che fanno riferimento ai tipi Tipo di porta: insieme di operazioni (action) implementate da un Web Service una porta è un punto di terminazione identificato in maniera univoca da: un identificativo (ad es: URL) un binding Binding WSDL/SOAP: un protocollo concreto d accesso a una porta e un formato dei messaggi e dei dati per questa porta Servizio: una collezione di porte (le instanze delle porte WSDL) <wsdl:definition> <wsdl:types> </wsdl:types> <wsdl:message> <wsdl:message> </wsdl:message> </wsdl:message> <wsdl:porttype> <wsdl:porttype> </wsdl:porttype> </wsdl:porttype> <wsdl:service> <wsdl:service> <wsdl:binding> </wsdl:service> </wsdl:service> </wsdl:binding> <wsdl:service> <wsdl:service> </wsdl:service> </wsdl:service> </wsdl:definition>

26 WSDL in sintesi Types Message Port Type Operation Binding Definizioni tipi di dati Firme di richesta e risposta per ogni metodo ( IDL) <servizio, protocollo> operazioni metodo messaggi Specifica del Protocollo e del formato dei dati Service { Port binding } Port Indirizzo ( URL)

27 WSDL: un esempio

28 UDDI Universal Description, Discovery and Integration insieme di specifiche che definiscono un modo per pubblicare e cercare servizi attraverso una repository centralizzata Obiettivo: fornire un catalogo mondiale che permetta di ricercare i Servizi Web in base allo stesso principio delle pagine gialle Definizione delle informazioni da fornire per ciascun servizio e del tipo di codifica API di ricerca ed aggiornamento che descrivono come si può accedere alla repository ed aggiornare le informazioni La riuscita di UDDI richiede che i diversi fornitori di Servizi Web si accordino sulla definizione di criteri comuni e di determinate categorie di servizi Operatori: Microsoft, IBM, SAP e HP Problematico cfr. slide seguente!

29 UDDI: un registro pubblico?

30 UDDI: un sito di esempio ancora vivo

31 Discovery UDDI Inquiry UDDI Registry Publish

32 Discovery UDDI Inquiry UDDI Registry Publish

33 UDDI Le specifiche UDDI definiscono le tre parti costituenti il registry Pagine bianche Identità del fornitore, indirizzo fisico ed elettronico, qualificazioni che fanno riferimento a tassonomie industriali standard Pagine gialle La descrizione dei servizi offerti Pagine verdi Informazioni sui modelli di accesso al servizio e i differenti modelli di dati sottostanti

34 Servizi Business Si tratta generalmente di funzioni legate al commercio elettronico Riproduzione in un mondo virtuale delle transazioni commerciali del mondo reale transazioni, contratti, fatturazione, pagamenti, ecc. I servizi Web Business mettono a disposizione degli sviluppatori un insieme di specifiche che facilitano lo sviluppo di applicazioni Web per settori applicativi specifici Per quanto riguarda gli aspetti tecnici, la specifica di alcuni Servizi Business è iniziata prima delle attività di standardizzazione del W3C

35 Servizi Business ebxml e RosettaNet: per formalizzare un infrastruttura completa per l e-commerce BitzTalk di Microsoft: formalizzazione dello scambio elettronico dei documenti professionali (fatture, ordini, ecc.) tra applicazioni Web distribuite WSFL (Web Services Flow Language) di IBM, XLANG di Microsoft e WSCL (Web Services Conversation Language) di HP per la specifica della composizione di un applicazione Web per l esecuzione di processi business BPML (Business Process Modeling Language) e BPQL del consorzio BPMI: una parte delle specifiche copre la sincronizzazione dei processi business in diverse aziende (es: gestione delle relazioni con i clienti, logistica, ecc.) WSUI (Web Service User Interface) di Epicentric, WSXL (Web Services Experience Language) di IBM e WSIA (Web Services Interactive Applications) di OASIS: Gestione dell accesso ai servizi Web BizTalk WSFL XLANG BPML BPQL ebxml RosettaNet tpaml WSUI WSXL WSIA Servizi Business

36 Piattaforme di sviluppo e esercizio Web Service su piattaforma leggera Server HTTP e Parser XML Esempi: Apache SOAP, Apache Axis, SOAP::Lite (Perl), PHPSOAP (PHP), WhiteMesa SOAP (C++), SOAP for ADA, Smalltalk Web Services Web Service su Application Server Valori aggiunti: gestione dell accesso concorrente, gestione delle transazioni, sicurezza e autenticazione, infrastrutture, tool di sviluppo Classificazione dei fornitori: Basi di dati: DBMS tradizionale + infrastruttura XML per integrare l architettura UDDI/WSDL/SOAP: Oracle, IBM, Sybase Middleware: BEA, Vitia, IBM, Progress Sistemi operativi: SUN, IBM, Microsoft

37 Supporto Java per Web Services JAX-RPC (Java API for XML-RPC): è di fatto Java RMI (Remote Method Invocation) su SOAP fornisce un interfaccia remota per lo scambio di messaggi SOAP in stile RPC SAAJ (SOAP API with Attachments for Java): è un API che modella la struttura di un messaggio SOAP ed implementa alcune funzionalità del protocollo per la comunicazione JAXM (Java API for XML Messaging): è simile a JMS (Java Message Service) fornisce un infrastruttura di messaging per spedire e ricevere messaggi SOAP

38 SOAP Toolkit: API- vs Stub-based Un toolkit SOAP è un API usata per spedire e ricevere messaggi SOAP Ci sono dozzine di SOAP toolkit in molti linguaggi: Java, C e C++, C#, VB.NET, Perl, ecc. Un toolkit stub-based usa il tradizionale modello di programmazione basato su RPC: uno stub RPC per comunicare con un Web service client-side si modella un Web service come un oggetto (remoto) che espone dei metodi JAX-RPC è lo standard stub-based di EJB 2.1 Un toolkit API-based è usato per costruire messaggi SOAP (Envelope, Header, Body, ecc.) esplicitamente SAAJ è lo standard SOAP API in EJB 2.1

39 Modelli di programmazione JAX-RPC 1. Generated Stub 2. Dynamic Proxy 3. DII (Dynamic Invocation Interface)

40 Generated Stub Il toolkit JAX-RPC genera, in accordo con la descrizione WSDL: l interfaccia java RMI il relativo stub Interfaccia RMI e stub possono poi essere pubblicati in un JNDI ENC (Environment Naming Context) In questo modello lo stub è generato a deployment time

41 Dynamic Proxy Un dynamic proxy è usato nello stesso modo di generated stub, ma: l implementazione dello stub e l interfaccia remota sono generati dinamicamente, a run-time Come per il caso precedente, la generazione dell interfaccia remota avviene in accordo con il documento WSDL che descrive le interfacce come porte ogni porta può avere una o più operazioni Porte e operazioni sono analoghe, rispettivamente, ad interfacce e metodi Java

42 DII (Dynamic Invocation Interface) JAX-RPC supporta un ulteriore API, ancora più dinamica, chiamata DII (Dynamic Invocation Interface) DII permette di assemblare chiamate a metodi SOAP dinamicamente, a run time L idea è la stessa di CORBA Dynamic Invocation Interface JAX-RPC DII permette di: creare oggetti che rappresentano singole operazioni di Web Service, altrimenti modellati come metodi di un interfaccia remota invocare tali operazioni senza la necessità di accedere ad una service factory o di usare uno stub e un interfaccia remota

43 AXIS: Apache extensible Interaction System Un SOAP Engine open source, caratterizzato da: configurazione/deployment molto flessibili (file.wsdd ) supporto per drop-in deployment (Java Web Service, JWS) supporto per tutti i tipi base serializzazione/deserializzazione automatica di Java Bean e possibilità di definire serializer/deserializer custom RPC e message-based provider Supporto per WSDL (WSDL2Java, Java2WSDL) Trasporto: HTTP, JMS (stabili)

44 Domande? 44

Introduzione ai Web Services Alberto Polzonetti

Introduzione ai Web Services Alberto Polzonetti PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services [email protected] Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Подробнее

Service Oriented Architectures e Web Services

Service Oriented Architectures e Web Services Service Oriented Architectures e Web Services Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.17 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Evoluzione

Подробнее

Web Service Architecture

Web Service Architecture Giuseppe Della Penna Università degli Studi di L Aquila [email protected] http://dellapenna.univaq.it Engineering IgTechnology Info92 Maggioli Informatica Micron Technology Neta Nous Informatica

Подробнее

Seminario di Sistemi Distribuiti RPC su SOAP

Seminario di Sistemi Distribuiti RPC su SOAP Seminario di Sistemi Distribuiti RPC su SOAP Massimiliano Vivian [777775] Massimiliano Vivian 1 Introduzione La comunicazione delle informazioni è l elemento fondamentale per lo sviluppo dei sistemi. SOAP

Подробнее

fornitore di servizi utente all interazione tra utenti e sistemi

fornitore di servizi utente all interazione tra utenti e sistemi WEB SERVICES Successo del Web Negli anni passati il Web ha avuto un enorme successo principalmente per due motivi: Semplicità: Ubiquità Per un fornitore di servizi è semplice raggiungere un numero molto

Подробнее

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO

ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO ALLEGATO C STANDARD TECNICI DELLA BORSA CONTINUA NAZIONALE DEL LAVORO Standard tecnici Gli standard tecnici di riferimento adottati sono conformi alle specifiche e alle raccomandazioni emanate dai principali

Подробнее

Ministero del Lavoro e delle Politiche Sociali

Ministero del Lavoro e delle Politiche Sociali Ministero del Lavoro e delle Politiche Sociali Prospetto Informativo on-line Standard tecnici del sistema informativo per l invio telematico del Prospetto Informativo Documento: UNIPI.StandardTecnici Revisione

Подробнее

Java Web Services. Uso di Eclipse e Apache Axis

Java Web Services. Uso di Eclipse e Apache Axis Java Web Services Uso di Eclipse e Apache Axis 1 Gli strumenti utili per iniziare Axis (Web Service tool) Eclipse (IDE di sviluppo) Tomcat (servlet/jsp container) N.B. Eclipse e Tomcat possono essere sostituiti

Подробнее

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

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML Master Universitario di II livello in Interoperabilità Per la Pubblica Amministrazione e Le Imprese Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security

Подробнее

Un introduzione ai Web service

Un introduzione ai Web service Un introduzione ai Web service Valeria Cardellini Università di Roma Tor Vergata Definizione di Web service Definizione fornita del W3C http://www.w3.org/tr/ws-arch/ A Web service is a software system

Подробнее

Presentazione di Cedac Software

Presentazione di Cedac Software Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994

Подробнее

Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005

Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005 Sommario Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005 Introduzione.................................................................................. 1 SOAP........................................................................................

Подробнее

Enterprise @pplication Integration Software S.r.l.

Enterprise @pplication Integration Software S.r.l. SAP rel.1.0 : SAP State: Final Date: 03-27-200 Enterprise @pplication Integration Software S.r.l. Sede legale: Via Cola di Rienzo 212-00192 Rome - Italy Tel. +39.06.6864226 Sede operativa: viale Regina

Подробнее

1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org

1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org 1 Vincenzo de Stefano SAP e Servizi Web http://desvino.altervista.org Prefazione. Da Hello World a Hello World Wide Web. Hello World è la prima frase stampata a video dal primo programma di esempio scritto

Подробнее

Definizione di Web service (2) Un introduzione ai Web service. Caratteristiche dei Web service. Valeria Cardellini Università di Roma Tor Vergata

Definizione di Web service (2) Un introduzione ai Web service. Caratteristiche dei Web service. Valeria Cardellini Università di Roma Tor Vergata Definizione di Web service Definizione fornita del W3C http://www.w3.org/tr/ws-arch/ Un introduzione ai Web service Valeria Cardellini Università di Roma Tor Vergata A Web service is a software system

Подробнее

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

Web Services. Scoperta del servizio UDDI. Descrizione del servizio WSDL. Accesso al servizio SOAP XML. Starto di comunicazione HTTP 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

Подробнее

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica [email protected] Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Подробнее

Protocolli applicativi: FTP

Protocolli applicativi: FTP Protocolli applicativi: FTP FTP: File Transfer Protocol. Implementa un meccanismo per il trasferimento di file tra due host. Prevede l accesso interattivo al file system remoto; Prevede un autenticazione

Подробнее

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Подробнее

Web Services Security

Web Services Security Web Services Security Introduzione ai Web Services Davide Marrone Sommario Cosa sono i web services Architettura dei web services XML-RPC SOAP (Simple Object Access Protocol) WSDL (Web Services Description

Подробнее

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4) Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione

Подробнее

Java Enterprise Edi.on. Gabriele Tolomei DAIS Università Ca Foscari Venezia

Java Enterprise Edi.on. Gabriele Tolomei DAIS Università Ca Foscari Venezia Java Enterprise Edi.on Gabriele Tolomei DAIS Università Ca Foscari Venezia Java Web Services Web Services: SOAP vs. RESTful 2 diversi.pi di Web Services I Web Services SOAP sono quelli classici Si basano

Подробнее

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Подробнее

Interoperabilità e cooperazione applicativa tra sistemi informativi

Interoperabilità e cooperazione applicativa tra sistemi informativi Interoperabilità e cooperazione applicativa tra sistemi informativi Michele Ruta Dipartimento di Ingegneria Elettrica e dell Informazione Politecnico di Bari 1di 29 Indice Introduzione ai Port Community

Подробнее

Distributed Object Computing

Distributed Object Computing Evoluzione Architetturale Distributed omputing entralizzata Monolitica anni 60-70 Reti locali di P anni 80 Reti lient Server anni 80-90 Internet The network is the computer Paolo Falcarin Sistemi Informativi

Подробнее

La Roadmap dello sviluppo per System i5: dalle Applicazioni Legacy alla SOA

La Roadmap dello sviluppo per System i5: dalle Applicazioni Legacy alla SOA IBM System i5 La Roadmap dello sviluppo per System i5: dalle Applicazioni Legacy alla SOA Massimo Marasco System i Technical Sales Support [email protected] Oriented Architecture (SOA) Servizio

Подробнее

Applicazioni web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications) Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento

Подробнее

Web services. 25/01/10 Web services

Web services. 25/01/10 Web services Web services Tecnologia per il computing distribuito standard W3C non dissimile da RMI, CORBA, EJB... Relazione con il Web Websites for humans, Web Services for software :-) un Web service ha un indirizzo

Подробнее

Modelli per la descrizione di protocolli

Modelli per la descrizione di protocolli POLITECNICO DI MILANO Corso di Laurea in Ingegneria Informatica Modelli per la descrizione di protocolli asincroni basati sull usouso di servizi Web Relatore: Prof. Stefano Ceri Correlatori: Ing. Marco

Подробнее

Approfondimento. Web Services

Approfondimento. Web Services Approfondimento Web Services Esame di Programmazione per il Web Fedele Ladisa INDICE Capitolo 1. Introduzione 1.1 Introduzione ai Web Services 1.2 Architettura dei Web Services 1.3 Stack protocollare di

Подробнее

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013 e di e di Candidato: Luca Russo Docente: Corso di laurea in Informatica Applicata Facoltá di Scienze e Tecnologie Programmazione su Reti 27 Marzo 2013 Traccia d esame Sviluppare multitier con disaccoppiamento

Подробнее

Socket & RMI Ingegneria del Software - San Pietro

Socket & RMI Ingegneria del Software - San Pietro Socket & RMI Ingegneria del Software - San Pietro Socket È possibile trattare la comunicazione di rete allo stesso modo con cui è possibile trattare la lettura da file. La classe Socket rappresenta la

Подробнее

OpenSPCoop Un Implementazione Open Source della specifica SPCoop di Cooperazione Applicativa

OpenSPCoop Un Implementazione Open Source della specifica SPCoop di Cooperazione Applicativa OpenSPCoop Un Implementazione Open Source della specifica SPCoop di Cooperazione Applicativa Tito Flagella [email protected] http://openspcoop.org La Cooperazione Applicativa Regolamentazione delle modalità

Подробнее

Framework. Impianti Informatici. Web application - tecnologie

Framework. Impianti Informatici. Web application - tecnologie Framework Web application - tecnologie Web Application: tecnologie 2 Java-based (J2EE) Sviluppata inizialmente da Sun Cross-platform e open source Gestire direttamente le funzionalità dell applicazione

Подробнее

Lo scenario: la definizione di Internet

Lo scenario: la definizione di Internet 1 Lo scenario: la definizione di Internet INTERNET E UN INSIEME DI RETI DI COMPUTER INTERCONNESSE TRA LORO SIA FISICAMENTE (LINEE DI COMUNICAZIONE) SIA LOGICAMENTE (PROTOCOLLI DI COMUNICAZIONE SPECIALIZZATI)

Подробнее

Architetture software

Architetture software Corso di Laurea Magistrale in Ingegneria Informatica Corso di Ingegneria del A. A. 2013-2014 Architettura software 1 Architetture software Sommario Definizioni 2 Architettura Definizione. L architettura

Подробнее

Sistemi informativi secondo prospettive combinate

Sistemi informativi secondo prospettive combinate Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da

Подробнее

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Подробнее

Analisi e sperimentazione della piattaforma Web Service Notification nell ambito del controllo del traffico aereo

Analisi e sperimentazione della piattaforma Web Service Notification nell ambito del controllo del traffico aereo tesi di laurea Analisi e sperimentazione della piattaforma Web Service Notification Anno Accademico 2006/2007 relatore Ch.mo prof. Domenico Cotroneo Correlatore Ing. Christiancarmine Esposito candidato

Подробнее

Reti di Calcolatori. Il Livello delle Applicazioni

Reti di Calcolatori. Il Livello delle Applicazioni Reti di Calcolatori Il Livello delle Applicazioni Il DNS Gli indirizzi IP sono in formato numerico: sono difficili da ricordare; Ricordare delle stringhe di testo è sicuramente molto più semplice; Il Domain

Подробнее

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

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo Come funziona il WWW Il funzionamento del World Wide Web non differisce molto da quello delle altre applicazioni Internet Anche in questo caso il sistema si basa su una interazione tra un computer client

Подробнее

Architetture Web Protocolli di Comunicazione

Architetture Web Protocolli di Comunicazione Architetture Web Protocolli di Comunicazione Alessandro Martinelli [email protected] 10 Maggio 2011 Architetture Web Architetture Web Protocolli di Comunicazione Il Client Side Il Server Side

Подробнее

Il Web-Service SDMX dell ISTAT

Il Web-Service SDMX dell ISTAT Il Web-Service SDMX dell ISTAT Versione: 1.0.0 Data: 26/06/2014 Autore: Approvato da: Modifiche Versione Modifiche Autore Data Indice dei contenuti 1 Introduzione... 4 2 Esempio d uso... 5 2.1 Riferimento

Подробнее

POR Calabria FSE 2007/2013 Asse II Occupabilità Obiettivo operativo D1

POR Calabria FSE 2007/2013 Asse II Occupabilità Obiettivo operativo D1 Allegato n. 2 al Capitolato speciale d appalto. ENTE PUBBLICO ECONOMICO STRUMENTALE DELLA REGIONE CALABRIA POR Calabria FSE 2007/2013 Asse II Occupabilità Obiettivo operativo D1 Procedura aperta sotto

Подробнее

B.P.S. Business Process Server ALLEGATO C10

B.P.S. Business Process Server ALLEGATO C10 B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel

Подробнее

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 Questi lucidi sono stati prodotti sulla

Подробнее

Reti di Calcolatori. Vantaggi dell uso delle reti. Cosa è una rete? Punto di vista logico: sistema di dati ed utenti distribuito

Reti di Calcolatori. Vantaggi dell uso delle reti. Cosa è una rete? Punto di vista logico: sistema di dati ed utenti distribuito Cosa è una rete? Punto di vista logico: sistema di dati ed utenti distribuito Punto di vista fisico: insieme di hardware, collegamenti, e protocolli che permettono la comunicazione tra macchine remote

Подробнее

Gestione Richieste Patenti Web

Gestione Richieste Patenti Web >> Specifiche Integrazione Web Services RTI Gestione Richieste Patenti Web Servizio di Sviluppo SVI Versione 1.0-07 Dicembre 2009 Indice dei contenuti 1 GENERALITA... 6 1.1 Lista di distribuzione...6 1.2

Подробнее

Sommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli

Sommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli Sommario Introduzione Architettura Client-Server Architettura a Due Livelli Architettura a Tre Livelli Server Web Browser Web Introduzione La storia inizia nel 1989 Tim Berners-Lee al CERN, progetto WWW

Подробнее

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Подробнее

Il Paradigma REST per lo sviluppo di applicazioni Web 2.0

Il Paradigma REST per lo sviluppo di applicazioni Web 2.0 tesi di laurea Anno Accademico 2006/2007 Il Paradigma REST per lo sviluppo di applicazioni Web 2.0 relatore Ch.mo prof. Domenico Cotroneo correlatore Ing. Marcello Cinque candidato Antonio Alonzi Matr.

Подробнее

DOCFINDERWEB SERVICE E CLIENT

DOCFINDERWEB SERVICE E CLIENT DOCFINDERWEB SERVICE E CLIENT Specifiche tecniche di interfacciamento al Web Service esposto da DocPortal Versione : 1 Data : 10/03/2014 Redatto da: Approvato da: RICCARDO ROMAGNOLI CLAUDIO CAPRARA Categoria:

Подробнее

Introduzione a Service Oriented Architecture e Web Service

Introduzione a Service Oriented Architecture e Web Service Università degli Studi di Roma Tor Vergata Dipartimento di Ingegneria Civile e Ingegneria Informatica Introduzione a Service Oriented Architecture e Web Service Corso di Sistemi Distribuiti e Cloud Computing

Подробнее

Il Web Server e il protocollo HTTP

Il Web Server e il protocollo HTTP Corso PHP Parte 2 Il Web Server e il protocollo HTTP E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta la esegue e restituisce il risultato al browser,

Подробнее

8. Sistemi Distribuiti e Middleware

8. Sistemi Distribuiti e Middleware 8. Sistemi Distribuiti e Middleware Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 8. Sistemi distribuiti e Middleware 1 / 32 Sommario 1 Sistemi distribuiti

Подробнее

PRACTICAL DEVELOPMENT OF A WEB SERVICE

PRACTICAL DEVELOPMENT OF A WEB SERVICE PRACTICAL DEVELOPMENT OF A WEB SERVICE 1 JAX-WS 2.0 Java API for XML Web Services Specifica basata su annotazioni Applicata su classi ed interfacce in modo da definire e gestire automaticamente il protocollo

Подробнее

E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI

E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI E-MAIL INTEGRATA Ottimizzazione dei processi aziendali Con il modulo E-mail Integrata, NTS Informatica ha realizzato uno strumento di posta elettronica

Подробнее

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2010/2011 Questi lucidi sono stati prodotti sulla

Подробнее

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Подробнее

Client e Server comunicano tramite il protocollo SOAP.

Client e Server comunicano tramite il protocollo SOAP. In questo tutorial implementeremo un semplice SOAP web service in PHP che un client Java richiamerà. In questo modo mostreremo l'interoperabilità fra linguaggi diversi che SOAP permette di avere. La struttura

Подробнее

CORBA ( Common Object Request Broker Architecture ) Le specifiche più conosciute sono UML e CORBA

CORBA ( Common Object Request Broker Architecture ) Le specifiche più conosciute sono UML e CORBA CORBA ( Common Object Request Broker Architecture ) consiste in un insieme di specifiche promosse e curate da OMG (Object Management Group). L OMG è un consorzio internazionale no-profit di industrie nel

Подробнее

Lezione 1 Introduzione

Lezione 1 Introduzione Lezione 1 Introduzione Ingegneria dei Processi Aziendali Modulo 1 Servizi Web Unità didattica 1 Protocolli Web Ernesto Damiani Università di Milano I Servizi Web Un Servizio Web è un implementazione software

Подробнее

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

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena [email protected] POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo

Подробнее

L o. Walter Ambu http://www.japsportal.org. japs: una soluzione agile (www.japsportal.org)

L o. Walter Ambu http://www.japsportal.org. japs: una soluzione agile (www.japsportal.org) L o JAPS: una soluzione Agile Walter Ambu http://www.japsportal.org 1 Lo sviluppo del software Mercato fortemente competitivo ed in continua evoluzione (velocità di Internet) Clienti sempre più esigenti

Подробнее

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it [email protected] 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Подробнее

Ingegneria del Software. Presentazione del pattern Proxy

Ingegneria del Software. Presentazione del pattern Proxy Ingegneria del Software Presentazione del pattern Proxy 1 Il pattern Proxy (1/6) Nome Proxy Synopsis Pattern molto generale che occorre in molti altri pattern, ma raramente nella sua forma pura. Il pattern

Подробнее

Definizione e realizzazione di un modello architetturale per la gestione della transazionalità in processi di business distribuiti. Edoardo Di Lorenzo

Definizione e realizzazione di un modello architetturale per la gestione della transazionalità in processi di business distribuiti. Edoardo Di Lorenzo Definizione e realizzazione di un modello architetturale per la gestione della transazionalità in processi di business distribuiti 29 marzo 2006 Edoardo Di Lorenzo Relatore: Marco Pistore Web Services

Подробнее

Architettura client-server

Architettura client-server Architettura client-server In un architettura client-server ci sono due calcolatori connessi alla rete: un client che sottopone richieste al server un server in grado di rispondere alle richieste formulate

Подробнее

SOA e Web Service SISTEMI INFORMATIVI MODULO II. Corso di Sistemi Informativi Modulo II A. A. 2013-2014

SOA e Web Service SISTEMI INFORMATIVI MODULO II. Corso di Sistemi Informativi Modulo II A. A. 2013-2014 Corso di Laurea Magistrale in Ingegneria Gestionale Corso di Sistemi Informativi Modulo II A. A. 2013-2014 SISTEMI INFORMATIVI MODULO II SOA e Web Service Figure tratte dal testo di riferimento, Copyright

Подробнее

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine. ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione

Подробнее

JNDI. Massimo Merro Programmazione di Rete 214 / 229

JNDI. Massimo Merro Programmazione di Rete 214 / 229 JNDI Abbiamo già visto come i registri RMI espletino un servizio di Naming attraverso cui vengono associati nomi simbolici a referenze a server remoti. Esistono comunque altri servizi di naming: COS (Common

Подробнее

JBoss ESB Un caso d'uso italiano: La Porta di Dominio per la Cooperazione Applicativa

JBoss ESB Un caso d'uso italiano: La Porta di Dominio per la Cooperazione Applicativa JBoss ESB Un caso d'uso italiano: La Porta di Dominio per la Cooperazione Applicativa Andrea Leoncini JBoss Stefano Linguerri - Pro-netics Agenda JBoss ESB le SOA e la Porta di Dominio Le specifiche CNIPA

Подробнее

Hardware delle reti LAN

Hardware delle reti LAN Hardware delle reti LAN Le reti LAN utilizzano una struttura basata su cavi e concentratori che permette il trasferimento di informazioni. In un ottica di questo tipo, i computer che prendono parte allo

Подробнее

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta [email protected] http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1

Подробнее

Progetto SIRPE De-materializzazione delle prescrizioni. Servizi personalizzati della CIL

Progetto SIRPE De-materializzazione delle prescrizioni. Servizi personalizzati della CIL Pag. 1 di 17 Progetto SIRPE De-materializzazione personalizzati CIL per la cooperazione Versione 1.0 INDICE Pag. 2 di 17 1 INTRODUZIONE 4 1.1 Scopo del documento 4 1.2 Riferimenti 4 2 GENERALITÀ 4 2.1

Подробнее

WebServices. Distribuire una computazione. Sistemi che usano RPC Sun RPC RPC. Il Web usato dai programmi. Vincenzo Gervasi

WebServices. Distribuire una computazione. Sistemi che usano RPC Sun RPC RPC. Il Web usato dai programmi. Vincenzo Gervasi 1 Distribuire una computazione WebServices Il Web usato dai programmi Vincenzo Gervasi Dipartimento di Informatica Università di Pisa L idea di distribuire una computazione è vecchia quasi quanto l informatica

Подробнее

Dal protocollo IP ai livelli superiori

Dal protocollo IP ai livelli superiori Dal protocollo IP ai livelli superiori Prof. Enrico Terrone A. S: 2008/09 Protocollo IP Abbiamo visto che il protocollo IP opera al livello di rete definendo indirizzi a 32 bit detti indirizzi IP che permettono

Подробнее

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

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica Installatore LAN Progetto per le classi V del corso di Informatica Active Directory 26/02/08 Installatore LAN - Prof.Marco Marchisotti 1 Agli albori delle reti...... nelle prime LAN era facile individuare

Подробнее

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);

Подробнее

Protocollo di metadata harvesting OAI-PMH Lavoro pratico 2

Protocollo di metadata harvesting OAI-PMH Lavoro pratico 2 Docente: prof.silvio Salza Candidato: Protocollo di metadata harvesting OAI-PMH Open Archive Initiative OAI (Open Archive Initiative) rendere facilmente fruibili gli archivi che contengono documenti prodotti

Подробнее

Composizione e Coreografia di Web Services

Composizione e Coreografia di Web Services Composizione e Coreografia di Web Services Giusy Di Lorenzo Composizione Lo scopo della composizione è quello di comporre servizi esistenti al fine di definire un nuovo servizio a valore aggiunto Richiesta

Подробнее

PARTE 11. Web Services

PARTE 11. Web Services PARTE 11 Web Services Parte 11 Modulo 1: Motivazioni Il miraggio dell informatica moderna Integrazione delle applicazioni Interoperabilità In pratica, ogni meccanismo che consenta a diversi sistemi software

Подробнее

E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI

E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI E-MAIL INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI E-MAIL INTEGRATA Ottimizzazione dei processi aziendali Con il modulo E-mail Integrata, NTS Informatica ha realizzato uno strumento di posta elettronica

Подробнее

Programmazione di Web Services

Programmazione di Web Services Luca Cabibbo Architetture Software Programmazione di Web Services Dispensa ASW 860 ottobre 2014 La scelta tra architetture può ben dipendere da quali sono gli svantaggi che il cliente può gestire meglio.

Подробнее