WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI"

Transcript

1 Istituto Tecnico Industriale G. Marconi - Rovereto (TN) Informatica WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI Luca Canali Stefano Parmesan Martino Salvetti Maicol Zenatti Anno Scolastico 2005 / 2006 WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 1 / 27

2 Web Services: un approccio moderno ai sistemi distribuiti Introduzione...3 Sistemi distribuiti...4 Introduzione a XML... 7 ATTRIBUTI E NAMESPACE...7 CONVALIDA DTD... 8 Web Services... 9 ARCHITETTURA...9 CICLO DI VITA...10 SCENARI DI UTILIZZO...11 SOAP Errori WSDL UDDI Netfinity...19 STORIA...19 Pyfinity...19 nfinity netfinity LATO CLIENT...21 gsoap Name Mangling...22 Qualche funzionalità: Backup Database...26 Sicurezza Funzioni rubrica SVILUPPI FUTURI WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 2 / 27

3 Introduzione Lo sviluppo di Internet, specialmente negli ultimi anni, ha subito una rapida evoluzione dovuta principalmente al mutamento dei suoi ambiti di utilizzo. Mentre agli albori di tale sviluppo le pagine statiche riuscivano a soddisfare le necessità degli sviluppatori, successivamente è nata l'esigenza di avere pagine variabili nel tempo e che interagissero con l'utente. Quindi si è passati da una programmazione semplice basata su linguaggi di markup come l'html a una programmazione vera e propria basata all'inizio su tecnologie come CGI (Common Gateway Interface), in seguito su linguaggi interpretati come PHP e ASP. Alle porte del terzo millennio Internet ha subito una nuova metamorfosi. Ora le aziende non si accontentano più di avere una semplice presenza sul Web ma hanno la necessità di utilizzarlo come mezzo strategico di comunicazione. Da un punto di vista tecnico sono quindi nati i primi application framework che letteralmente significa infrastruttura di applicazioni le quali ovviamente devono collaborare tra di loro. Il problema principale di questa tecnologia è rappresentato dall'eterogeneità dei protocolli utilizzati che quindi rendono complicata la comunicazione e lo scambio di informazioni. Le prime aziende che si sono mobilitate per sopperire a questo problema furono Microsoft, IBM, Sun Microsystems e Apache Software Foundation che posero le basi per lo sviluppo di un protocollo di comunicazione standard (SOAP: Simple Object Access Protocol) come punto di inizio per un nuovo tipo di applicazione web: i web services. Il funzionamento di questi web services è relativamente semplice. Essi utilizzano un middleware che permette di fornire un'interfaccia di comunicazione comune a tutti indipendentemente dalla piattaforma utilizzata; il tutto in maniera trasparente sia per l'utente che per il programmatore. Un progetto analogo è CORBA (Common Object Request Broken Architecture) che si prefigge come scopo la costruzione di ponti tra i vari linguaggi di programmazione creando architetture distribuite, ma la sua complessità realizzativa ha frenato in parte la sua diffusione. Il vero punto di forza dei web services è rappresentato dal fatto che, a differenza di CORBA, si basa sull'xml (extensible Markup Language) che è un metalinguaggio la cui sintassi e semantica sono indipendenti dall'ambiente e dal linguaggio di programmazione utilizzato. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 3 / 27

4 Sistemi distribuiti Prima di cominciare con l'analisi dei sistemi distribuiti è doveroso partire dal concetto di sistema centralizzato nato all'inizio degli anni Sessanta con l'avvento dei mainframe in cui si concentravano tutte le forze elaborative ai quali venivano collegati dei semplici terminali chiamati stupidi. Successivamente, verso gli anni Ottanta si diffondono le prima LAN (Local Area Network) dove ogni componente è dotato di una sua autonomia e permette la condivisione delle risorse. Infine, grazie all'avvento dell'architettura client server e delle reti WAN (Wide Area Network) è nato all'inizio degli anni Novanta il concetto di sistema distribuito. Qual è la reale differenza fra una rete normale e un sistema distribuito? In una rete l'esistenza di calcolatori autonomi non è trasparente, ovvero l'utente deve esplicitamente dire a quale macchina si collega e a quale macchina richiede un'elaborazione remota. In sostanza i sistemi distribuiti introducono questa trasparenza. Grazie ad essi ora è possibile far riferimento ai servizi offerti dalle stazioni della rete senza la necessità di conoscerne l'ubicazione. Formalmente, i sistemi distribuiti permettono l'accesso a risorse remote e la condivisione di servizi. Come già accennato nell'introduzione Internet ha subito varie metamorfosi nella sua breve vita, l'ultima delle quali è la fornitura di servizi. Di conseguenza ha visto la luce SOA (Service Oriented Architecture) che non è altro che un'architettura in grado di supportare l'uso di questi servizi attraverso l'introduzione delle seguenti entità: Il fornitore del servizio (provider); Il registro per la descrizione del servizio. In pratica esso contiene tutte le informazioni necessarie per l'utilizzo del servizio; Il cliente che richiede il servizio. Ecco come queste entità interagiscono tra di loro: Publishing: pubblicazione del servizio dal fornitore sul registro; Service location: Il client ricerca in quali registri si trova il servizio di cui ha bisogno; Binding: Il client si collega al servizio per usarlo. Analizziamo ora alcune delle tecnologie esistenti per implementare tutto ciò. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 4 / 27

5 L'architettura più famosa è senz'ombra di dubbio CORBA (Common Object Request Broker Architecture) definita formalmente dall'omg (Object Management Group) nel In pratica si è utilizzato uno dei principi base della programmazione ad oggetti, l'incapsulamento, e lo si è applicato in funzione del superamento delle barriere esistenti nelle infrastrutture hardware e software di un sistema distribuito; ovvero si è riusciti a mettere in comunicazione due oggetti localizzati su due differenti architetture incapsulandoli in altri oggetti omogenei tra di loro. Dato che questi oggetti risiedono su macchine diverse è nata la necessità di creare un canale di comunicazione, l'object Request Broker (ORB). Un'altra tecnologia molto utilizzata è RPC (Remote Procedure Call) che equivale alla chiama a procedura locale soltanto che questa avviene in remoto. Lo svantaggio rispetto a CORBA è che RPC richiede l'uniformità delle piattaforme. Le altre tecnologie che meritano di essere menzionate sono RMI (Remote Method Invocation) e DCOM ma la loro trattazione sarà discussa in altra sede. Il fattore che accomuna queste architetture è la creazione di un middleware che permetta la comunicazione in maniera trasparente all'utente. Il reale problema è rappresentato dal fatto che comunque queste tecnologie sono eterogenee perché ognuno utilizza il proprio standard ed è difficile inoltre comunicare con reti differenti a causa dei firewall. Il primo passo verso la risoluzione di questi problemi è l'utilizzo di XML, un linguaggio di markup WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 5 / 27

6 come l'html, ma a differenza di quest'ultimo è in grado di dare struttura e significato ai dati. Inoltre, dato che è in formato testuale, è indipendente dalla piattaforma e facilita le operazioni di debugging perché è comprensibile non solo per la macchina ma anche per il programmatore. Superato questo scoglio non resta che il problema di come descrivere le informazioni da trasportare. Ovviamente anche la descrizione deve essere standardizzata altrimenti le tre entità potrebbero usufruire di protocolli diversi tra di loro. Visto che ci stiamo muovendo verso un'architettura orientata ai servizi non ci basta più scambiare solo informazioni. Analizziamo quindi le differenze principali fra servizi e informazioni. 1. Il servizio deve essere accessibile a tutti; 2. Il servizio deve essere facilmente reperibile; 3. Il servizio deve essere in grado di descrivere ciò che può fornire. Il raggiungimento di questi obiettivi lo si è avuto con l'introduzione dei web services. Le loro caratteristiche principali sono le seguenti: 1. I web services devono essere in grado di comunicare tra di loro; 2. Essi possono essere sincroni (necessitano di una risposta) o asincroni (comunicazione one way); 3. Affidabilità; 4. Sicurezza; 5. Modularità. Quindi per la loro realizzazione sono stati introdotti: Un protocollo basato su XML per lo scambio dei dati (SOAP: Simple Object Access Protocol); Un linguaggio che permetta la descrizione del servizio (WSDL: Web Services Description Language); Un metodo per pubblicare e cercare i servizi (UDDI: Universal Description Discovery and Integration). Il protocollo di trasmissione utilizzato è l'ormai collaudatissimo HTTP. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 6 / 27

7 Introduzione a XML Prima di parlare di XML è doveroso citare il capostipite di tutti i linguaggi di markup, lo SGML (Standard General Markup Language). È stato ideato per la creazione di linguaggi ed è stato standardizzato dall'iso nel L'XML è un insieme di regole che permettono la suddivisione del documento in parti e sottoparti con l'ausilio dei tag. L'obiettivo era realizzare un linguaggio simile allo SGML ma più semplice e per fare ciò si sono basati sull'html che al tempo riscuoteva parecchio successo per la sua intuitività. Ovviamente anche l'xml è stato standardizzato. L'ente che si è occupato di questo è il W3C (World Wide Web Consortium). Nel documento di standardizzazione il W3C dice cosa è e cosa non è l'xml: XML deve essere facilmente implementato su Internet; XML deve essere utilizzato dal più ampio numero di applicazioni; XML deve essere compatibile con SGML; Deve essere facile scrivere dei programmi che processano un documento XML; I documenti XML devono essere leggibili dai programmatori; I documenti in XML devono essere di facile realizzazione; Il markup XML non deve essere necessariamente conciso; Il progetto di un documento XML deve essere mirato e conciso; Le caratteristiche opzionali di XML devono essere ridotte al minimo. L'aspetto più importante è rappresentato dal fatto che questo linguaggio è in grado di fare una netta distinzione fra contenitore e contenuti. ATTRIBUTI E NAMESPACE Mentre i tag rappresentano l'infrastruttura del documento, gli attributi rappresentano delle informazioni su questa infrastruttura; ovvero sono dei metadati relativi all'elemento in cui sono stati dichiarati. Gli attributi esistono anche nell'html, ma in questo caso sono statici e forniscono informazioni solo sull'aspetto del documento. In XML, invece, non hanno questo scopo per il semplice motivo che non è un linguaggio di formattazione ma di descrizione. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 7 / 27

8 L'utilizzo degli attributi non è soggetto a regole ben precise; devono essere usati a discrezione del programmatore. Un'altra funzionalità molto interessante di questo linguaggio sono i namespace che permettono il riutilizzo di tag già definiti in altri documenti. CONVALIDA DTD Esiste la possibilità di creare delle regole personalizzate enunciandole in un DTD, ovvero un documento che ne definisce la struttura e il vocabolario. Bisogna prestare particolare attenzione a questa funzionalità perché i parser XML possono essere di due tipi: convalidanti e non convalidanti. Nel primo caso è possibile eseguire il parsing del documento XML corredato da DTD perché controlla automaticamente la correttezza formale. Infine esiste la possibilità di inserire altre informazioni come immagini, suoni ecc... Questi elementi vengono chiamati entità e possono essere di due tipi: interne (definite all'interno del DTD) o esterne (link). WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 8 / 27

9 Web Services Ora che abbiamo introdotto i concetti base sui sistemi distribuiti e sull'xml siamo pronti ad analizzare in maniera più approfondita il funzionamento di un servizio web. Il capitolo partirà con lo studio dell'architettura su cui si basano e poi prenderemo in esame il protocollo SOAP per la trasmissione dei messaggi, il linguaggio WSDL per la descrizione dei servizi e di come sia possibile pubblicare e ricercare un web service con l'ausilio di UDDI. Ma prima di tutto ciò proviamo a dare una definizione il più possibile formale di web services. In base alla definizione presente nel documento Web Services Architecture Requirements a W3C Working Draft 29 april 2002 un web service è un applicativo software identificato da un URI, in cui l'interfacciamento e l'interazione sono definite, descritte e scoperte, tramite un dialetto XML, e supporta direttamente l'interazione con altre applicazioni software utilizzando l'xml come linguaggio per i messaggi e i protocolli base di internet per la comunicazione. ARCHITETTURA Nel documento appena citato vengono descritte anche le caratteristiche che un web service deve possedere per poter essere definito standard. Le principali sono: Interoperabilità; Affidabilità; Web friendly: ovvero la capacità di adattarsi alle esigenze del web, quindi deve basarsi su un sistema di codifica standard come XML, di utilizzare URI per l'identificazione della tecnologia e HTTP per il trasporto dei dati; Sicurezza; Scalabilità ed espandibilità. Come enunciato nel primo capitolo per SOA anche i web services possiedono le stesse tre entità che fanno parte del ciclo di vita di un servizio: 1) Provider; 2) Registry; 3) Client. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 9 / 27

10 Nell'idea originale di SOA il sistema è di tipo centralizzato client server. I web services invece optano per un sistema decentralizzato basato sul peer to peer (P2P). Passiamo ora all'analisi dei protocolli. SOAP: Come detto nei capitoli precedenti serve per lo scambio di informazioni ed è basato anch'esso come tanti altri su XML. Successivamente sono nati uno schema con il relativo namespce. Il punto di forza di questo protocollo è che non è necessaria una conoscenza approfondita di piattaforme o linguaggi di programmazione da parte dell'utente, basta saper inviare e ricevere messaggi SOAP. UDDI: È una delle due specifiche per il rilevamento di servizi web. L'alternativa è DISCO (DISCOver). Entrambi sono in grado di riunire servizi comuni su un server e di fornire un link ai documenti schema che possono essere richiesti. WSDL: Anch'esso si basa su XML ed è in grado di fornire una descrizione del servizio web. Le principali informazioni che fornisce sono: Reperimento dell'uri; Metodi e proprietà supportati dai servizi; Tipo di dati; Protocollo di comunicazione. CICLO DI VITA Il ciclo di vita di un web service si suddivide principalmente in 6 fasi: 0) Pubblicazione del web service in un registro in modo che sia reperibile dai client. Il web service deve ovviamente essere corredato dal suo WSDL; 1) Facciamo richiesta a un nodo UDDI di un determinato servizio web attraverso un web service pubblico; 2) Il registro fornisce una lista di risultati; 3) Vengono forniti URI relativi a documenti WSDL; WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 10 / 27

11 4) Seguiamo l'uri del documento WSDL scelto; 5) Dopo un analisi del documento WSDL costruiamo un oggetto proxy per poter interagire con il servizio web. Tutte le tecnologie sviluppate finora per i web services necessitano la presenza di un contenitore, Il contenitore è un sistema che fornisce un supporto tecnologico per le esigenze richieste. Tutte le implementazioni che conosciamo sono basate sui web server eccezion fatta per J2EE di Sun Microsystem e.net framework di Microsoft. Da un punto di vista del server nel nostro progetto viene utilizzato il web server httpd 2.0 sviluppato da Apache Software Foundation con PHP 4.3 (Hypertext Preprocessor) come linguaggio di scripting server side con la libreria NuSOAP per la realizzazione dei web services. Dal punto di vista del client, invece, dato che è stato sviluppato in C ed in C++ viene sfruttata la potenzialità offerta dalla libreria gsoap che permette un livello di astrazione tale da potersi concentrare solo sulla logica del programma e non dipendere dalla logica dettata da una semplice API SOAP (la particolarità di questa libreria verrà discussa nei prossimi capitoli). Da un punto di vista strettamente funzionale il client web service deve solo essere capace di inviare, ricevere e interpretare i messaggi SOAP. Fatto molto interessante è che un client può essere un altro web service. SCENARI DI UTILIZZO I scenari di utilizzo dei web service sono principalmente sette: 1. Fire and Forget: Descrive una one way operation senza garanzie; 2. Un sistema one way ma con garanzia dove il trasmettitore vuole ricevere la conferma di ricezione. È utile quando si devono trasmettere informazioni importanti; 3. One way con documenti incorporati; 4. Request Response : Ad ogni messaggio SOAP ricevuto viene inviato un messaggio appropriato; 5. Servizio di notifica (asincrono); 6. Sistema di notifica transazionale (comunicazione fra web services per la registrazione di una WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 11 / 27

12 transazione distribuita); 7. Ottenere un documento WSDL tramite un web service ed immagazzinarlo in registri. SOAP Questo protocollo è stato standardizzato la prima volta l'8 aprile L'ultima versione è la 1.2 ed è stata approvata il 26 giugno Per la standardizzazione di questo protocollo sono stati stilati due documenti: SOAP 1.2 framework: definisce la struttura dei messaggi SOAP e di come questi interagiscono come mezzo per scambiare informazioni o come sistemi RPC; SOAP 1.2 adjuncts: Definisce il modo di rappresentare gli oggetti all'interno del messaggio. Il protocollo SOAP è costituito da: Busta SOAP (SOAP Envelope). Essa definisce: struttura generale per esprimere cos'è un messaggio; chi deve occuparsi del messaggio; se è facoltativo o obbligatorio. Regole di encoding di SOAP. Definisce il modo in cui le interazioni devono essere codificate e serializzate; Rappresentazione delle RPC all'interno di SOAP. Un messaggio SOAP è suddiviso in un envelope (busta) che contiene un header e un body che possono contenere qualsiasi informazione in formato XML. Come detto in precedenza la libreria SOAP permette di incapsulare le RPC. Per utilizzare SOAP RPC è necessario: L'indirizzo del target; Nome della procedura o del metodo; WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 12 / 27

13 Identificazione degli argomenti da passare al metodo; Un metodo di separazione degli argomenti. Errori Per gli errori SOAP esiste un envelope specifico chiamato Fault Envelope. Se si verifica un errore in fase di elaborazione in un messaggio SOAP viene generato il seguente codice Queste informazioni sono quelle indispensabili che vengono sempre incluse, ma possono essere presenti anche altre informazioni opzionali. In SOAP 1.2 viene definito il ruolo dell'header nella gestione degli errori. Un errore di questo tipo fa riferimento ad imprevisti accaduti solo ed esclusivamente nel corpo del messaggio. Ciò significa che anche il body volendo può contenere il messaggio d'errore, ma solo l'header ha tutte le informazioni dettagliate. Per questi tipi di errore è stato creato un namespace apposito. Inoltre SOAP 1.2 prevede anche degli errori dedicati a RPC i quali sono definiti nel nuovo WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 13 / 27

14 namespace e hanno rpc: come prefisso. I due possibili errori sono: rpc:procedurenotpresent rpc:badarguments Passiamo ora all'analisi di come SOAP gestisca gli allegati. L'introduzione degli allegati è dovuta al fatto che la gestione di dati binari in SOAP è alquanto complicata. Si è pensato quindi di utilizzare uno standard chiamato SwA (SOAP with Attachments) che permette appunto di allegare ad un messaggio SOAP un qualsiasi file binario grazie all'ausilio del formato MIME (utilizzato per gli allegati nelle e mail). MIME in pratica suddivide il messaggio in diversi blocchi attribuendo a ciascuno di essi un attributo MIME che lo identifichi. Ora non ci resta che capire come viaggiano i messaggi SOAP. I web services per la trasmissione utilizzano principalmente i protocolli HTTP e SMTP. Ipotizziamo che ci siano un nodo trasmettitore (chiamato comunemente Hop) ed un nodo ricevitore (chiamato comunemente Peer) ciascuno dei due identificato da un URI. Entrambi i protocolli in esame sono protocolli standard di Internet e si posizionano sopra TCP e quindi occupano il livello di sessione e presentazione del modello di riferimento ISO / OSI. Nel caso di HTTP esistono due modi per inviare le informazioni, utilizzando i metodi POST o GET. Nel primo caso si include l'intero XML nell'header HTTP in modo da ricevere la risposta nel body HTTP. Il messaggio nell'intestazione viene inviato nel seguente modo: POST /Reservations HTTP/1,1 Host: silix.org Content-Type: application/soap+xml; charset= utf-8 Content-Length: nnnn <?xml version= 1.0?>... WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 14 / 27

15 La risposta quindi finisce nel body: Con GET le cose sono differenti, infatti la risposta è un messaggio SOAP inserito nel body mentre nell'header non va nessun documento XML. Esempio: GET /silix.org/pagina?variabile= valore HTTP/1.1 Host: silix.org Accept: text/html, application/soap+xml Da questo header si può vedere che gli unici documenti accettati sono di tipo text/html e application/soap+xml. Per quanto concerne l'altro protocollo, SMTP, esso è adibito all'invio delle e mail, quindi inviare un messaggio SOAP con questo protocollo equivale proprio ad inviare un e mail. Lo scenario tipico è quello Fire and Forget perché l'invio di un messaggio di posta elettronica è di tipo one way; in linea di massima possiamo utilizzarlo anche nello scenario dove è presente la notifica perché SMTP fra le varie funzionalità offre anche il Delivery Status Notification che WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 15 / 27

16 permette un controllo a livello di protocollo. WSDL Il WSDL è il linguaggio per la descrizione dei servizi web. L'idea generale è quella di creare una serie di end point che siano in grado di comunicare tra di loro. Il WSDL è anche un Interface Description Language (IDL) ed esso definisce: I tipi di dato; I messaggi; Il tipo di comunicazione che ogni messaggio necessita. La sua vera potenzialità è rappresentata dal fatto che si possono scrivere i messaggi di scambio senza dover specificare il protocollo di rete adibito al trasporto. Un file WSDL si suddivide in due parti principali: una parte definisce l'implementazione (con gli attributi Service e Port), l'altra parte definisce l'interfaccia del servizio descrivendo i messaggi, i metodi e il tipo di dati supportati con i relativi marcatori. I principali tag di un documento WSDL sono i seguenti: <definitions> rappresenta la radice di tutto il documento e contiene tutti namespace che vengono utilizzati; <documentation> è un tag opzionale e contiene un link ad una documentazione più comprensibile da parte dell'utente; <import> equivale all'#include in C ed in C++. È molto utile perché permette di rendere il tutto più modulare; <type> contiene il tipo di dati che ci sono negli altri tag; <message> serve per definire i dati che verranno scambiati dai Web Service nel corso del WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 16 / 27

17 servizio; <PortType> specifica un insieme di funzionalità supportate dal web service e definisce le operazioni eseguibili dall'endpoint dove risiede il servizio; <ServiceType> come dice il nome stesso definisce il tipo di servizio offerto; <binding> specifica il protocollo e il formato dei dati da trasportare, nel caso di HTTP specifica se bisogna utilizzare il metodo GET o il metodo POST; <service> identifica il servizio web e definisce l'endpoint. UDDI È un progetto molto ambizioso che si prefigge lo scopo di realizzare un sistema per la pubblicazione e la descrizione di servizi web. Da un punto di vista pratico si vuole creare un framework indipendente da qualsiasi tipo di piattaforma idoneo per realizzare questi obiettivi. Confrontandolo con l'architettura SOA, UDDI rappresenta il registro dove i clienti possono ricercare i servizi di cui hanno bisogno. UDDI è costituito da due elementi principali: 1. UDDI XML Schema for Business Description serve per stilare dei documenti XML che rispondono ad un determinato Schema per la descrizione dei vari elementi di un'attività di qualsiasi genere; 2. Web based registry: Questi dati sono disponibili tramite un'interfaccia via browser o tramite servizi pubblicati su SOAP. In pratica quando un'azienda realizza un servizio web la prima cosa che fa è la registrazione presso un sito UDDI. Il cliente che richiede un determinato servizio si collega ad un sito UDDI e analogamente ad un motore di ricerca interroga la base di dati UDDI in base ad alcuni criteri e ottiene le informazioni necessarie per usufruire del servizio. Un azienda può registrare tre diversi tipi di informazioni: Pagine bianche, ovvero le informazioni sull'azienda; Pagine gialle, ovvero le informazioni sul servizio offerto; Pagine verdi, ovvero le informazioni di carattere tecnico sul servizio offerto. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 17 / 27

18 In linea di massima UDDI è un insieme di servizi web che effettuano tre operazioni: 1. Registrazione; 2. Pubblicazione; 3. Ricerca. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 18 / 27

19 Netfinity Il progetto netfinity permette di utilizzare il servizio offerto da Vodafone Italia per l'invio di sms dal Web tramite il portale 190.it. netfinity Server Side rende disponibili le primitive per l'invio dei messaggi e la gestione della rubrica centralizzata mediante web Services. La rubrica implementa una complessa e articolata gestione dei gruppi di contatti. Ad ogni utente in fase di registrazione verrà assegnata una password, memorizzata in forma crittografata nel database, per garantire la privacy ed evitare modifiche non richieste alla rubrica. STORIA Pyfinity Il progetto Pyfinity è nato nel 2005 per rendere disponibile ai nostri utenti un servizio non documentato che Vodafone Italia forniva ai suoi dipendenti. Esso consisteva nell'inoltrare via sms il testo delle mandate a determinati indirizzi. L'autenticazione avveniva solo con il controllo del dominio di provvenienza delle ; è quindi stato sufficiente falsificare il mittente per convincere il server Vodafone a processare i nostri messaggi. Pyfinity è stato scritto in Python, un linguaggio di scripting general purpose molto potente, scelto per la sua semplicità e per la completezza della documentazione, anche in italiano. Lo script nella sua ultima versione, Pynfinity (2 gennaio 2006), implementa anche una rubrica tramite file CSV, che rende snello l'utilizzodel software malgrado l'interfaccia a caratteri. nfinity nfinity è un progetto parallelo a Pynfinity e ha avuto lo scopo di fornire un'interfaccia grafica (GUI) allo script in Python. Esso è stato sviluppato in ambiente Borland C++ Builder ed è quindi disponibile solo per l'ambiente Windows, a differenza di Pynfinity che è compatibile con qualsiasi piattaforma che disponga dell'interprete Python. La comunicazione fra i due programmi avviene in modo rudimentale tramite file temporanei. Per evitare questa situazione è nato netfinity WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 19 / 27

20 netfinity Con netfinity abbiamo voluto spostare su un server pubblico i compiti svolti da Pynfinity e lasciare sul client solo l'interfaccia con l'utente finale. Questo passaggio ci ha costretti ad abbandonare Python in favore di PHP; sia per la scarsa documentazione sull'uso del linguaggio via web, sia perché sul nostro server pubblico era installata la versione 2.0 di Python (rilasciata nel 2000). Com'era prevedibile Vodafone Italia modificò o sospese il servizio d'inoltro degli sms via , così il 1 marzo 2006 netfinity perse lo scopo di esistere. Col tempo un'idea più legale e duratura avanzò nei nostri progetti: utilizzare i servizi messi a disposizione dal portale 190.it. Come si vede dallo schema logico ogni messaggio viene mandato dal client al server Silix.org via Web Service; esso apre delle connessioni HTTP con il server Vodafone 190.it, che gli consentono di effettuare il login e successivamente mandare uno o più messaggi. Il progetto prevede la suddivisione principale in due parti, una lato client ed una lato server. A loro volta anch'essi vengono suddivisi in due sottoprogetti. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 20 / 27

21 LATO CLIENT Per quanto concerne il lato client un sottoprogetto ha lo scopo di creare l'interfaccia grafica dell'utente e di interfacciarsi al secondo sottoprogetto che è adibito alla creazione di una libreria dinamica (DLL Dynamic Link Library) che sia in grado di comunicare con il web service lato server. Il programma è (almeno inizialmente) sviluppato per ambiente windows con il Borland C++ Builder 5 per l'interfaccia grafica, che è uno dei pochi strumenti sul mercato che permette lo sviluppo di applicazioni RAD (Rapid Application Development) in C++. Per la DLL invece si utilizza il compilatore GCC (GNU Compiler Collection). Questa scelta è stata obbligata a causa dell'utilizzo della libreria gsoap per l'interfacciamento con il web service. gsoap Questa libreria è molto particolare per come ci si interfaccia con essa; per capire realmente il suo funzionamento leggiamo la seguente traduzione della documentazione ufficiale del progetto: Il kit di sviluppo open source gsoap offre un binding tra XML e C/C++ per la costruzione facilitata di Web services SOAP/XML in C e C++. Molti toolkit per i Web Services in C++ adottano una vista centrata su SOAP e offrono un'api che richiede l'uso di librerie di classi per le strutture dati specifiche di SOAP. Questo forza l'utente ad adattare la logica dell'applicazione a queste librerie. In contrasto gsoap fornisce invece un'api SOAP trasparente attraverso l'uso di tecnologie di compilazione collaudate. Queste tecnologie sfruttano lo strong typing per mappare gli schemi XML alle definizioni C/C++. WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 21 / 27

22 Il compilatore gsoap genera serializzatori XML efficienti per i tipi di dati nativi e definiti dall'utente all'interno del codice C/C++. Come risultato, l'interoperabilità SOAP/XML è raggiunta con una semplice API che libera lo sviluppatore dal dover conoscere tutti i dettagli che stanno dietro a WSDL e SOAP, permettandogli di concentrarsi sulla logica del programma. Il compilatore permette in sostanza al codice C/C++ esistente di esporre tramite SOAP servizi e informazioni che possono essere condivisi con altri Web Services in maniera semplice ed intuitiva senza costringere lo sviluppatore a stravolgere la logica dell'applicazione. Name Mangling Un problema molto interessante che è nato nella creazione della libreria dinamica è rappresentato dal fatto che il C++, a differenza del C, quando una funzione deve essere esportata, il suo nome viene storpiato aggiungendo caratteri che variano da compilatore a compilatore. Questo è dovuto al fatto che il C++ è un linguaggio orientato agli oggetti e supporta l'overloading delle funzioni. Ciò significa che il nome delle funzioni (e anche delle classi) non è univoco all'interno del sorgente; per sopperire a questo problema il compilatore modifica appunto il nome. Per evitare che ciò accada la funzione deve essere linkata in stile C ponendo il codice fra i blocchi #ifdef cplusplus extern C { #endif /* definizione della funzione */ #ifdef cplusplus } #endif Qualche funzionalità: Menu principale (tasto blu): Mostra / nascondi gruppi vuoti: permette di nascondere o di mostrare i gruppi vuoti a seconda che gia` lo siano o meno. Mostra / nascondi edit numero singolo: permette di nascondere o di mostrare la edit per inviare un WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 22 / 27

23 messaggio a un numero non presente in rubrica, presente nel gruppo di default. Disconnetti: permette di tornare alla pagina di login per poter accedere eventualmente con un altro utente. Opzioni: apre la schermata di impostazioni di netfinity (descritta in seguito) About: mostra un piccolo about che indica come contattarci... Esci: chiude netfinity Menu dei gruppi (click con il tasto destro del mouse su un gruppo): Seleziona tutto: seleziona tutti i contatti nel gruppo Deseleziona tutto: deseleziona tutti i contatti del gruppo Nuovo gruppo: permette di creare un nuovo gruppo. Una finestra chiedera` il nome del nuovo gruppo da creare Ordina alfabeticamente: ordina alfabeticamente i contatti all'interno del gruppo Modifica: permette di modificare il nome del gruppo. Muovi: permette di spostare il gruppo in un'altra posizione. Metti in testa il gruppo che vuoi venga aperto all'avvio di netfinity! Elimina: elimina il gruppo. ATTENZIONE: non verra` eliminato il gruppo aperto, ma il gruppo su cui hai cliccato con il tasto destro! Menu dei contatti (click con il tasto destro del mouse su un contatto o sulla lista vuota di un gruppo): Nuovo contatto: permette di creare un nuovo contatto. Una finestra chiedera` il nome e il numero. Modifica: modifica il contatto selezionato Muovi: permette di ordinare a piacere i contatti all'interno del gruppo... Copia in...: copia il contatto selezionato in un altro gruppo. Un contatto copiato in tale modo e` in realta` lo stesso contatto presente due volte, quindi modificando il suo nome o il suo numero, esso viene modificato in entrambi i gruppi. Sposta in...: sposta il contatto selezionato in un altro gruppo. Elimina: elimina il contatto selezionato. Altre funzionalita`: -La pressione di CTRL + ENTER invia il messaggio, simulando la pressione del tasto "invia" -La pressione di CTRL + BACKSPACE pulisce il testo del messaggio e deseleziona tutti i contatti, WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 23 / 27

24 simulando la pressione del tasto "pulisci" -E` possibile ridurre netfinity ad icona, lasciandolo nella TrayBar. Una qualunque comunicazione, come ad esempio l'avvenuto invio di un messaggio, verra` segnalata con un popup." Opzioni: Generale: Impostazioni: permette di gestire alcune importanti funzionalita` di netfinity: il controllo di esecuzione (controlla all'avvio se una versione di netfinity e` gia` in esecuzione, evitando di aprirne altre), riduzione automatica ad icona (riduce ad icona netfinity quando si invia un sms) e il log degli errori (salva in un file di testo "netfinity.log" tutti gli errori che si verificano) ShortCuts: permette di scegliere le scorciatoie per ridurre ad icona netfinity (di default CTRL+SHIFT+FRECCIA GIU) e per recuperarlo dalla tray bar (di default CRTL+SHIFT+FRECCIA SU) Connessione: Login: si puo` impostare netfinity in modo che effettui il login automaticamente all'avvio, inserendo nome utente e password che si volgiono utilizzare. Proxy: se si utilizza un proxy per accedere a internet, si puo` indicarlo a netfinity da qui`. Account: Modifica profilo: permette di modificare le proprie informazioni personali presenti sul server di netfinity, quali password, nome utente e password del 190 e il numero di messaggi che si vuole condividere Importa rubrica: importa la rubrica di precedenti versioni di netfinity (piu` precisamente nfinity, il software precedente) in realta` si tratta di un semplice file cvs con i contatti memorizzati come "nomeutente,numero,gruppo" Esporta rubrica: esporta la propria rubrica in un file cvs con i dati separati da virgole. Utile per copie di backup. LATO SERVER Per quanto concerne l'applicativo lato server i due sottoprogetti sono relativi (1) alla gestione della rubrica e (2) all'invio vero e proprio del messaggio grazie all'interfacciamento con il sito 190.it. Il server viene eseguito su una macchina equipaggiata di sistema operativo GNU/Linux con web WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 24 / 27

25 server httpd dell'apache Software Foundation e PHP 4.3 come linguaggio di scripting general purpouse lato server. La scelta del DBMS è caduta per forza di cose su MySQL 4.1 perché la società che ospita il nostro sito web (www.silix.org) non lascia alternative. Le funzionalità di questo DBMS sono veramente limitate; non permette l'utilizzo né delle foreign key né l'utilizzo di trigger o stored procedure. Di conseguenza la gestione del DBMS via PHP diventa più complessa. Passiamo ora ad analizzare il database che abbiamo creato per la gestione della rubrica. Progettazione concettuale: Progettazione logica: Utente (nome, password, informazioni utente) Gruppo (nomeusr, nomegrp) FOREIGN KEY nomeusr REFERENCES Utente(nome) Contatto (id, nome, numero) GrpCon (nomeusr, nomegrp, idcon) FOREIGN KEY nomeusr, nomegrp REFERENCES Gruppo FOREIGN KEY idcon REFERENCES Contatto WEB SERVICES: UN APPROCCIO MODERNO AI SISTEMI DISTRIBUITI 25 / 27

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

Dettagli

Appendice D. D. Web Services

Appendice D. D. Web Services D. D.1 : cosa sono I cosiddetti sono diventati uno degli argomenti più attuali nel panorama dello sviluppo in ambiente Internet. Posti al centro delle più recenti strategie di aziende del calibro di IBM,

Dettagli

Seminario di Sistemi Distribuiti: RPC su SOAP

Seminario di Sistemi Distribuiti: RPC su SOAP Corso di Sistemi Distribuiti Prof. S. Balsamo Seminario di Sistemi Distribuiti: RPC su SOAP [ 777775] 1 INTRODUZIONE 3 2 RPC 3 3 SOAP (SIMPLE OBJECT ACCESS PROTOCOL) 3 4 UTILIZZO DI SOAP COME PROTOCOLLO

Dettagli

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web parte 1 Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web (1) Modello a tre livelli in cui le interazioni tra livello presentazione e livello applicazione sono mediate

Dettagli

Programmabilità di rete con l'infrastruttura Cisco basata sulle applicazioni

Programmabilità di rete con l'infrastruttura Cisco basata sulle applicazioni White paper Programmabilità di rete con l'infrastruttura Cisco basata sulle applicazioni Panoramica Questo documento analizza il supporto alla programmabilità nell'infrastruttura ACI (Application Centric

Dettagli

Internet Architettura del www

Internet Architettura del www Internet Architettura del www Internet è una rete di computer. Il World Wide Web è l insieme di servizi che si basa sull architettura di internet. In una rete, ogni nodo (detto host) è connesso a tutti

Dettagli

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

Dettagli

Laboratorio di RETI DI CALCOLATORI

Laboratorio di RETI DI CALCOLATORI Laboratorio di RETI DI CALCOLATORI A.A. 2009-2010 I WEB SERVICES Carlo Mastroianni Laboratorio di Reti di Calcolatori - Orario lunedì, 11:30-13:30, aula 40B mercoledì, 10:00-11:30, laboratorio settimo

Dettagli

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

Dettagli

CORSO WEB SERVER, DBMS E SERVER FTP

CORSO WEB SERVER, DBMS E SERVER FTP CORSO WEB SERVER, DBMS E SERVER FTP DISPENSA LEZIONE 1 Autore D. Mondello Transazione di dati in una richiesta di sito web Quando viene effettuata la richiesta di un sito Internet su un browser, tramite

Dettagli

Gli XML Web Service. Prof. Mauro Giacomini. Complementi di Informatica Medica 2008/2009 1

Gli XML Web Service. Prof. Mauro Giacomini. Complementi di Informatica Medica 2008/2009 1 Gli XML Web Service Prof. Mauro Giacomini Medica 2008/2009 1 Definizioni i i i Componente.NET che risponde a richieste HTTP formattate tramite la sintassi SOAP. Gestori HTTP che intercettano richieste

Dettagli

Glossario. dei. termini

Glossario. dei. termini MoonSoft Via Belzoni, 6 35100 Padova E-Mail: moonsoft2007@gmail.com Glossario dei termini Versione 1.2e Redatto da: Spimpolo Matteo Controllato da: Scapin Enrico Approvato da: Tessari Lorenzo MST_RR_GlossarioDeiTermini_1.2e

Dettagli

Contenuti. Applicazioni di rete e protocolli applicativi

Contenuti. Applicazioni di rete e protocolli applicativi Contenuti Architettura di Internet Principi di interconnessione e trasmissione World Wide Web Posta elettronica Motori di ricerca Tecnologie delle reti di calcolatori Servizi Internet (come funzionano

Dettagli

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET)

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Ipotesi di partenza: concetti di base del networking Le ipotesi di partenza indispensabili per poter parlare di tecniche di accesso

Dettagli

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014.

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014. Istituto Tecnico Industriale Statale Dionigi Scano Cagliari Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014 relate Un esperimento di social networking open source 1 Introduzione

Dettagli

Livello cinque (Livello application)

Livello cinque (Livello application) Cap. VII Livello Application pag. 1 Livello cinque (Livello application) 7. Generalità: In questo livello viene effettivamente svolto il lavoro utile per l'utente, contiene al suo interno diverse tipologie

Dettagli

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 alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Dettagli

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

Dettagli

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

Dettagli

TUTORIAL IBM RATIONAL PERFORMANCE TESTER 8.2.1

TUTORIAL IBM RATIONAL PERFORMANCE TESTER 8.2.1 TUTORIAL IBM RATIONAL PERFORMANCE TESTER 8.2.1 Versione documento : 0.1 Data : 23/10/2012 Autore : Pietro Cornelio Software usato per la redazione del documento : LibreOffice 3.5.4.2 Pag. 1/23 INTRODUZIONE

Dettagli

Web Services Dogane LINEE GUIDA

Web Services Dogane LINEE GUIDA Web Services Dogane LINEE GUIDA Pagina 1 di 17 Indice Indice... 2 1. INTRODUZIONE... 3 2. TEST FUNZIONALI SUI WEB SERVICES... 8 3. SICUREZZA... 14 4. FIRMA... 14 5. TRASFORMAZIONE CERTIFICATO DI FIRMA...

Dettagli

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

Dettagli

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli

Service Oriented Architectures (SOA)

Service Oriented Architectures (SOA) Facoltà di Ingegneria dell Informazione Laurea Specialistica in Ingegneria Informatica Facoltà di Ingegneria dei Sistemi Laurea Magistrale in Ingegneria Biomedica Dipartimento di Elettronica e Informazione

Dettagli

18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET

18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET 18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET Ipotesi di partenza: concetti di base del networking Le ipotesi di partenza indispensabili per poter parlare di tecniche di accesso ai database

Dettagli

maildocpro Manuale Installazione

maildocpro Manuale Installazione maildocpro Manuale Installazione versione 3.4 maildocpro Manuale Installazione - Versione 3.4 1 Indice Indice... 2 Creazione database... 3 Database: MAILDOCPRO... 3 Database: SILOGONWEB... 5 Configurazione

Dettagli

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione Evoluzione del Web Direzioni di sviluppo del web a) Multimedialità b) Dinamicità delle pagine e interattività c) Accessibilità d) Separazione del contenuto dalla forma di visualizzazione e) Web semantico

Dettagli

Aspetti applicativi e tecnologia

Aspetti applicativi e tecnologia Aspetti applicativi e tecnologia Premessa Architetture usate per i database Le prime applicazioni erano definite monolitiche, cioè un unico computer (mainframe) gestiva sia le applicazioni che i dati,

Dettagli

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

Dettagli

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

Dettagli

Applicazioni e Architetture Internet. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Applicazioni e Architetture Internet. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Applicazioni e Architetture Internet 1 Introduzione Introduzione alle architetture a tre livelli Formati di dati per il Web HTML, XML, DTD 2 Componenti dei sistemi dataintensive Tre tipi separati di funzionalità:

Dettagli

Sistema integrato dei portali RAS: specifiche di integrazione

Sistema integrato dei portali RAS: specifiche di integrazione Sistema integrato dei portali RAS: specifiche di integrazione Linee guida tecniche per l'integrazione con il presentation layer del CMS RAS Data: File: Allegato 3 - Specifiche di integrazione SIP-RAS.odt

Dettagli

Protocolli di rete. Vittorio Maniezzo Università di Bologna. Vittorio Maniezzo Università di Bologna 02 Protocolli - 2/30

Protocolli di rete. Vittorio Maniezzo Università di Bologna. Vittorio Maniezzo Università di Bologna 02 Protocolli - 2/30 Protocolli di rete Vittorio Maniezzo Università di Bologna Vittorio Maniezzo Università di Bologna 02 Protocolli - 1/30 Strati di protocolli (Protocol Layers) Le reti sono complesse Molti elementi: host

Dettagli

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

Dettagli

HTML 1. HyperText Markup Language

HTML 1. HyperText Markup Language HTML 1 HyperText Markup Language Introduzione ad HTML Documenti HTML Tag di markup Formattazione del testo Collegamenti ipertestuali Immagini Tabelle Form in linea (moduli) Tecnologie di Sviluppo per il

Dettagli

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

Dettagli

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti Sviluppo di applicazioni web con il pattern Model-View-Controller Gabriele Pellegrinetti 2 MVC: come funziona e quali sono vantaggi che derivano dal suo utilizzo? La grande diffusione della tecnologia

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

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 massimo_marasco@it.ibm.com Oriented Architecture (SOA) Servizio

Dettagli

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

@2011 Politecnico di Torino. Pag. 1. Architettura distribuita. Architetture Client/Server. Architettura centralizzata. Architettura distribuita Architettura client/ stazioni utente Basi di ati Architetture /Server B locali M BG Architettura centralizzata Un architettura è centralizzata quando i dati e le (programmi) risiedono in un unico Tutta

Dettagli

Software per la gestione di musei di arte contemporanea1

Software per la gestione di musei di arte contemporanea1 Software per la gestione di musei di arte contemporanea1 Identificativo del progetto: CA Nome documento: System Design(SD) Identificativo del documento: 6 CA_SD_E1_R1 Data del documento: 21/05/2012 Prima

Dettagli

Web Service Architecture

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

Dettagli

Internet e protocollo TCP/IP

Internet e protocollo TCP/IP Internet e protocollo TCP/IP Internet Nata dalla fusione di reti di agenzie governative americane (ARPANET) e reti di università E una rete di reti, di scala planetaria, pubblica, a commutazione di pacchetto

Dettagli

Introduzione ad Architetture Orientate ai Servizi e Web Service

Introduzione ad Architetture Orientate ai Servizi e Web Service Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Introduzione ad Architetture Orientate ai Servizi e Web Service Corso di Sistemi Distribuiti Stefano Iannucci iannucci@ing.uniroma2.it Anno

Dettagli

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento I protocolli del livello di applicazione Porte Nelle reti di calcolatori, le porte (traduzione impropria del termine port inglese, che in realtà significa porto) sono lo strumento utilizzato per permettere

Dettagli

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

COME FARE PER. ARMONIZZARE IL SITO COL SISTEMA DI GESTIONE DOCUMENTALE DELL ENTE COME FARE PER. ARMONIZZARE IL SITO COL SISTEMA DI GESTIONE DOCUMENTALE DELL ENTE Flavia Marzano marzano@cibernet.it 10/05/2004 ARPA Club Forum PA 2004 Contenuti Cenni normativi Sistema di gestione documentale:

Dettagli

Ministero della Giustizia

Ministero della Giustizia Ministero della Giustizia DIPARTIMENTO DELL ORGANIZZAZIONE GIUDIZIARIA, DEL PERSONALE E DEI SERVIZI DIREZIONE GENERALE PER I SISTEMI INFORMATIVI AUTOMATIZZATI AREA CIVILE POLISWEB Piano delle verifiche

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

ListinoWX. Versione 2010 Estratto Dal Manuale. Depliant illustrativo. ListinoWX ScriptLab vers.2010 Depliant illustrativo

ListinoWX. Versione 2010 Estratto Dal Manuale. Depliant illustrativo. ListinoWX ScriptLab vers.2010 Depliant illustrativo ListinoWX Depliant illustrativo Versione 2010 Estratto Dal Manuale 1 ListinoWX Framework gestionale ERP nato dalla collaborazione con aziende del settore agroalimentare, adattabile a tutte quelle imprese

Dettagli

SIAGAS Manuale Utente Utente non autenticato

SIAGAS Manuale Utente Utente non autenticato SIAGAS Manuale Utente Utente non autenticato 27 marzo 2007 v.1.7 SIAGAS: Manuale Utente: utente non autenticato 1/10 1 Introduzione 1.1 Destinatario del prodotto SIAGAS è uno Sportello Informativo per

Dettagli

Internet Terminologia essenziale

Internet Terminologia essenziale Internet Terminologia essenziale Che cos è Internet? Internet = grande insieme di reti di computer collegate tra loro. Rete di calcolatori = insieme di computer collegati tra loro, tramite cavo UTP cavo

Dettagli

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

Dettagli

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1)

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Pagina 1 di 10 Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Nel corso della lezione precedente abbiamo analizzato le caratteristiche dell'architettura CGI.

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

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

Dettagli

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

Dettagli

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

Dettagli

XML: La nascita del linguaggio

XML: La nascita del linguaggio XML: introduzione alla codifica dei testi Con la codifica dei testi si intende la rappresentazione dei testi stessi su un supporto digitale in un formato utilizzabile dall'elaboratore (Machine Readable

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

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

APPENDICE B Le Active Server Page

APPENDICE B Le Active Server Page APPENDICE B Le Active Server Page B.1 Introduzione ad ASP La programmazione web è nata con la Common Gateway Interface. L interfaccia CGI tuttavia presenta dei limiti: ad esempio anche per semplici elaborazioni

Dettagli

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

Dettagli

I Principali Servizi del Protocollo Applicativo

I Principali Servizi del Protocollo Applicativo 1 I Principali Servizi del Protocollo Applicativo Servizi offerti In questa lezione verranno esaminati i seguenti servizi: FTP DNS HTTP 2 3 File Transfer Protocol Il trasferimento di file consente la trasmissione

Dettagli

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati Basi di dati PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati PostgreSQL è Open-Source ed il suo sviluppo procede da 15 anni il suo codice sorgente è quindi disponibile

Dettagli

INTRODUZIONE A RETI E PROTOCOLLI

INTRODUZIONE A RETI E PROTOCOLLI PARTE 1 INTRODUZIONE A RETI E PROTOCOLLI Parte 1 Modulo 1: Introduzione alle reti Perché le reti tra computer? Collegamenti remoti a mainframe (< anni 70) Informatica distribuita vs informatica monolitica

Dettagli

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

Dettagli

ICT (Information and Communication Technology): ELEMENTI DI TECNOLOGIA

ICT (Information and Communication Technology): ELEMENTI DI TECNOLOGIA ICT (Information and Communication Technology): ELEMENTI DI TECNOLOGIA Obiettivo Richiamare quello che non si può non sapere Fare alcune precisazioni terminologiche IL COMPUTER La struttura, i componenti

Dettagli

BIMPublisher Manuale Tecnico

BIMPublisher Manuale Tecnico Manuale Tecnico Sommario 1 Cos è BIMPublisher...3 2 BIM Services Console...4 3 Installazione e prima configurazione...5 3.1 Configurazione...5 3.2 File di amministrazione...7 3.3 Database...7 3.4 Altre

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

PROGETTO - Ingegneria del Software. Università degli Studi di Milano Polo di Crema. Corso di laurea in Scienze Matematiche, Fisiche e Naturali

PROGETTO - Ingegneria del Software. Università degli Studi di Milano Polo di Crema. Corso di laurea in Scienze Matematiche, Fisiche e Naturali Università degli Studi di Milano Polo di Crema Corso di laurea in Scienze Matematiche, Fisiche e Naturali INFORMATICA Corso di Ingegneria del Software progetto IL SISTEMA CALENDAR Presentato al dott. Paolo

Dettagli

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni UltraSMS Introduzione 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni 2. Gestire Contatti 2.1 Inserire/modificare/cancellare un contatto 2.2 Importare i contatti da Outlook 2.3 Creare una lista di numeri

Dettagli

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni

UltraSMS. Introduzione. 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni UltraSMS Introduzione 1. Primo Avvio 1.1 Installazione 1.2 Impostazioni 2. Gestire Contatti 2.1 Inserire/modificare/cancellare un contatto 2.2 Importare i contatti da Outlook 2.3 Creare una lista di numeri

Dettagli

LUCA VACCARO. Politecnico di Milano. S2MS Guida di Riferimento

LUCA VACCARO. Politecnico di Milano. S2MS Guida di Riferimento LUCA VACCARO Politecnico di Milano S2MS Guida di Riferimento L U C A V A C C A R O S2MS Guida di Riferimento Software sviluppato da Luca Vaccaro luck87@gmail.com Progetto del corso Internetworking TCP/IP

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

Applicazione: Piattaforma di Comunicazione Unificata

Applicazione: Piattaforma di Comunicazione Unificata Riusabilità del software - Catalogo delle applicazioni: Amministrativi/Contabile Applicazione: Piattaforma di Comunicazione Unificata Amministrazione: Regione Piemonte - Direzione Innovazione, Ricerca

Dettagli

Basi di dati. Introduzione a PostgreSQL. K.Donno - Introduzione a PostgreSQL

Basi di dati. Introduzione a PostgreSQL. K.Donno - Introduzione a PostgreSQL Basi di dati Introduzione a PostgreSQL Introduzione a PostgreSQL PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati PostgreSQL è Open-Source ed il suo sviluppo procede da

Dettagli

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

Dettagli

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........................................................................................

Dettagli

Server USB Manuale dell'utente

Server USB Manuale dell'utente Server USB Manuale dell'utente - 1 - Copyright 2010Informazioni sul copyright Copyright 2010. Tutti i diritti riservati. Disclaimer Incorporated non è responsabile per errori tecnici o editoriali od omissioni

Dettagli

La rete ci cambia la vita. Le persone sono interconnesse. Nessun luogo è remoto. Reti di computer ed Internet

La rete ci cambia la vita. Le persone sono interconnesse. Nessun luogo è remoto. Reti di computer ed Internet La rete ci cambia la vita Lo sviluppo delle comunicazioni in rete ha prodotto profondi cambiamenti: Reti di computer ed Internet nessun luogo è remoto le persone sono interconnesse le relazioni sociali

Dettagli

Reti di computer ed Internet

Reti di computer ed Internet Reti di computer ed Internet La rete ci cambia la vita Lo sviluppo delle comunicazioni in rete ha prodotto profondi cambiamenti: nessun luogo è remoto le persone sono interconnesse le relazioni sociali

Dettagli

Stack protocolli TCP/IP

Stack protocolli TCP/IP Stack protocolli TCP/IP Application Layer Transport Layer Internet Layer Host-to-Nework Layer DNS SMTP Telnet HTTP TCP UDP IP Insieme di eterogenei sistemi di rete... 1 Concetti base Differenza tra i concetti

Dettagli

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

Dettagli

Tecniche Multimediali

Tecniche Multimediali Chiedersi se un computer possa pensare non è più interessante del chiedersi se un sottomarino possa nuotare Edsger Dijkstra (The threats to computing science) Tecniche Multimediali Corso di Laurea in «Informatica»

Dettagli

Installazione Client/Server

Installazione Client/Server Installazione Client/Server Sommario 1. Moduli di BIM...3 2. Installazione della suite...5 3. Configurazione moduli...9 3.1. BIMVision / BIMReader...9 3.1.1. Configurazione file di amministrazione...9

Dettagli

Logo Microsoft Outlook 2003

Logo Microsoft Outlook 2003 Tecnologie informatiche CONFIGURARE MICROSOFT OUTLOOK 2003 Introduzione Logo Microsoft Outlook 2003 Microsoft Office Outlook 2003 è l'applicazione di Microsoft Office per la comunicazione e per la gestione

Dettagli

Manuale di Integrazione IdM-RAS

Manuale di Integrazione IdM-RAS IdM-RAS Data: 30/11/09 File: Manuale di integrazione IdM-RAS.doc Versione: Redazione: Sardegna IT IdM-RAS Sommario 1 Introduzione... 3 2 Architettura del sistema... 4 2.1 Service Provider... 4 2.2 Local

Dettagli

Questa scelta è stata suggerita dal fatto che la stragrande maggioranza dei navigatori usa effettivamente IE come browser predefinito.

Questa scelta è stata suggerita dal fatto che la stragrande maggioranza dei navigatori usa effettivamente IE come browser predefinito. Pagina 1 di 17 Installazione e configurazione di applicazioni Installare e configurare un browser Come già spiegato nelle precedenti parti introduttive di questo modulo un browser è una applicazione (lato

Dettagli

Novità di Visual Studio 2008

Novità di Visual Studio 2008 Guida al prodotto Novità di Visual Studio 2008 Introduzione al sistema di sviluppo di Visual Studio Visual Studio Team System 2008 Visual Studio Team System 2008 Team Foundation Server Visual Studio Team

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

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

Dettagli

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni)

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni) Progettazione di Sistemi Interattivi Struttura e supporti all implementazione di applicazioni in rete (cenni) Docente: Daniela Fogli Gli strati e la rete Stratificazione da un altro punto di vista: i calcolatori

Dettagli

Introduzione alle Applicazioni Web

Introduzione alle Applicazioni Web Introduzione alle Applicazioni Web di Mary Ercolini Con il termine Applicazione Web si intende un applicazione risiedente in un Server Web alla quale si accede tramite un browser Internet o un altro programma

Dettagli

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Redatto: Nucleo Gestione Innovazione e fornitori IT Versione: 1.0 Data emissione: 9/11/2006

Dettagli

Oreste Signore, Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, 1-56124 Pisa

Oreste Signore, <oreste@w3.org> Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, 1-56124 Pisa http://www.w3c.it/education/2012/upra/basicinternet/#(1) 1 of 16 Oreste Signore, Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, 1-56124 Pisa Master in Comunicazione

Dettagli

createsession existssession alivesession deletesession deleteallsession getcredit getcreditsubaccount addtransactionsubaccount addsubaccount

createsession existssession alivesession deletesession deleteallsession getcredit getcreditsubaccount addtransactionsubaccount addsubaccount PROTOCOLLO DI INVIO SOAP SOAP è un protocollo per lo scambio di messaggi basato su protocollo HTTP e scambio dei dati in XML, quindi disponibile per qualsiasi piattaforma/linguaggio di programmazione,

Dettagli

REQUISITO DI ACCESSIBILITA

REQUISITO DI ACCESSIBILITA ISTITUTO COMPRENSIVO Pascoli - Crispi Via Gran Priorato, 11-98121 Messina Via Monsignor D'Arrigo, 18-98122 Messina Tel/Fax. 09047030 090360037 e-mail: meic87300t@istruzione.it / meee00800r@istruzione.it

Dettagli

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 2

Reti di Calcolatori. Master Bio Info Reti e Basi di Dati Lezione 2 Reti di Calcolatori Sommario Software di rete TCP/IP Livello Applicazione Http Livello Trasporto (TCP) Livello Rete (IP, Routing, ICMP) Livello di Collegamento (Data-Link) I Protocolli di comunicazione

Dettagli

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

Dettagli