Client e Server comunicano tramite il protocollo SOAP.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Client e Server comunicano tramite il protocollo SOAP."

Transcript

1 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 del modello client/server sarà di questo tipo: Il client java richiede un servizio, passando eventuali parametri di input e aspetta una risposta dal server SOAP PHP. Il client non deve necessariamente conoscere la logica dell'applicazione server, ma deve solo avere le specifiche per poter richiamare i servizi, ad esempio l'url di dove risiedere il server, i servizi che mette a disposizione e la firma dei servizi (Parametri di input e di output).il meccanismo della comunicazione SOAP è il seguente: Client e Server comunicano tramite il protocollo SOAP. Il server descrive tramite un file WSDL lo skeleton dei servizi che espone (Ovvero indica al client i parametri di Input e di Output di ogni servizio e come raggiungerli). Se il client invia una richiesta SOAP valida, ovvero che segue le direttive del WSDL, allora il server manda una risposta SOAP al client contenente il risultato della chiamata effettuata dal client. Se il client invia una richiesta SOAP non valida il server invia un errore o un eccezione al client. Chiamate errate tipiche sono quelle in cui si richiama un servizio che non esiste, oppure si richiama sbagliando la cardinalità o il tipo dei parametri da passare. La caratteristica principale del protocollo SOAP è che permette una comunicazione a client e server di diversa specie. Si può avere ad esempio un server SOAP PHP (ma anche un server SOAP Java o.net) a cui accedono applicazioni desktop scritte in Java o in.net, applicazioni mobile che supportano la comunicazione SOAP e in generale, la comunicazione è possibile per qualsiasi linguaggio supporti questo tipo di protocollo che il server mette a disposizione. Questo protocollo rende client e server indipendenti l'uno dall'altro, al server non interessa la logica dell'applicazione del client, al client non interessa la logica dell'applicazione del server, il server mette a disposizione dei servizi per eventuali client che li richiamano. Nel nostro esempio, il nostro server metterà a disposizione del client un servizio che prende come parametri un intero positivo e restituisce la radice quadrata del parametro passato. Configurazione dell'ambiente del client Java Java SE Versione 1.6 Axis SOAP toolkit Versione 1.4 Configurazione dell'ambiente del server PHP

2 PHP Versione 5.2 APACHE Versione Configurazione di SOAP nel file php.ini per evitare problemi di cache nella lettura del file wsdl: [soap] soap.wsdl_cache_enabled=0 soap.wsdl_cache_ttl=10 soap.wsdl_cache_limit = 5 Moduli PHP necessari: xmlrpc Creazione del file WSDL (Sul server) Per prima cosa scriviamo il file WSLD che contiene le informazioni necessarie che il client deve avere per poter accedere al servizio. ServerSoapPHP.wsdl <?xml version="1.0" encoding="utf 8" standalone="no"?> <! WSDL Server SOAP Walter russo > <definitions name="serversoap" targetnamespace="http://localhost/soap/other/" xmlns:tns="http://localhost/soap/other/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/xmlschema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/"> <! Costruzione del messaggio della richiesta SOAP > <message name="radicequadratarequest"> <wsdl:part name="intparameter" type="xsd:integer" /> </message> <! Costruzione del messaggio della risposta SOAP > <message name="radicequadrataresponse"> <part name="result" type="xsd:double" /> </message> <porttype name="radicequadrataporttype"> <operation name="radicequadrata"> <input message="tns:radicequadratarequest" /> <output message="tns:radicequadrataresponse" /> </operation> </porttype> <binding name="radicequadratabinding" type="tns:radicequadrataporttype"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" /> <operation name="radicequadrata"> <soap:operation soapaction="" /> <input> <soap:body use="literal" namespace="http://localhost/soap/other/" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" /> </input> <output> <soap:body use="literal" namespace="http://localhost/soap/other/" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" /> </output> </operation>

3 </binding> <! Descrizione del servizio radicequadrata > <service name="radicequadrataservice"> <port name="radicequadrataport" binding="tns:radicequadratabinding"> <soap:address location="http://localhost/soap/other/phpsoapserver.php" /> </port> </service> </definitions> Il server PHP Il server SOAP php deve esporre il metodo per il calcolo della radice quadrata, caricare i servizi che desidera esporre e caricare il file ServerSoapPHP.wsdl. PHPSoapServer.php <?php * Server SOAP di esempio che calcola la radice quadrata di un numero Walter Russo array delle funzioni che il server deve esporre ai client $functions = array ( "RadiceQuadrata" ); * La funzione che effettivamente viene richiamata dal client $intparameter function radicequadrata ($intparameter) { return sqrt($intparameter); * Funzione che include i servizi che il server espone $functions $server function addfunctions($functions,$server) { foreach ($functions as $function) { //Aggiungi un nuovo servizio $server >addfunction($function); * Entry Point del server unknown_type //Crea Oggetto SoapServer passandogli il percorso del file wsdl. $server= new SoapServer("ServerSoapPHP.wsdl"); //AGGIUNGI I SERVIZI addfunctions($functions,$server ); $server >handle();?> IL CLIENT JAVA Il client java deve conoscere poche cose del server, ovvero dove risiede il server e la firma dei servizi da richiamare (Parametri di input e di output)

4 * Client in java che richiama un webservice soap scritto in PHP. * Il servizio richiamato restituisce la radice quadrata di un numero intero positivo * Walter Russo * import java.net.malformedurlexception; import javax.xml.namespace.qname; import javax.xml.rpc.parametermode; import javax.xml.rpc.serviceexception; import org.apache.axis.client.call; import org.apache.axis.client.service; import org.apache.axis.encoding.xmltype; public class ClientJavaSoap { /*Uri del server static String soapuri = "http://localhost/soap/other/phpsoapserver.php"; public static Call configureservice() throws ServiceException, MalformedURLException { Service service = new Service(); // Instanzia l'oggetto Call Call call = (Call) service.createcall(); // setta le coordinate del server call.settargetendpointaddress(new java.net.url(soapuri)); return call; public static Double testradicequadrata(int value) { try { Call call = configureservice(); call.setoperationname(new QName(soapuri, "radicequadrata")); // Parametro di input call.addparameter("intparameter", XMLType.SOAP_INTEGER, ParameterMode.IN); // parametro da restituire (OUTPUT) call.addparameter("return", XMLType.SOAP_DOUBLE, ParameterMode.OUT); int number = value; // Costruzione dell'array da passare nella chiamata al servizio Object[] params = new Object[] { number ; // settare il parametro di ritorno della funzione call.setreturntype(xmltype.soap_double); // invocazione del servizio Double ret = (Double) call.invoke(params); // risultato della chiamata return ret; // In caso di eccezione restituiamo -1 come risultato catch (Exception e) { System.err.println(e.toString()); return -1.0; public static void main(string[] args) { int param = 99; double result = testradicequadrata(param); System.out.print("\n Il risultato della radice quadrata di " + param + " è " + result);

5 Conclusioni Ora non resta che provare che in tutto funzioni lanciando il client java, se tutto va a buon fine il risultato visibile sulla consolle Java sarà il seguente: Il risultato della radice quadrata di 99 è

Creare client statici

Creare client statici Client statico Creare client statici Un client statico crea, a partire dal WSDL di un servizio, un insieme di classi di supporto client-side (stub) Sono necessari solo 2 passi: 1. parsing del WSDL pubblicato

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

Classificazione dei Web Services

Classificazione dei Web Services Web Services Programmazione in ambienti distribuiti Anno 2004-2005 Claudio Zunino Classificazione dei Web Services Interattiva il client è umano ed utilizza tipicamente un web browser Sviluppati usando

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

Programmazione su Reti

Programmazione su Reti Programmazione su Reti Esempio di applicazione Client Server su protocollo Soap Fabio Donatantonio Applicazione Applicazione Client-Server per la gestione di un elenco di persone con relativi dati. Viene

Dettagli

Web Service SOAP e WSDL. Tito Flagella tito@link.it Lorenzo Nardi nardi80@gmail.com

Web Service SOAP e WSDL. Tito Flagella tito@link.it Lorenzo Nardi nardi80@gmail.com Web Service SOAP e WSDL Tito Flagella tito@link.it Lorenzo Nardi nardi80@gmail.com SOAP Originariamente: Simple Object Access Protocol E poi evoluto in un Framework per lo scambio di messaggi in XML 2

Dettagli

Il Sistema di interscambio: Prodotti di TEST a supporto dell adesione ai servizi

Il Sistema di interscambio: Prodotti di TEST a supporto dell adesione ai servizi Pagina 1 di 18 Il Sistema di interscambio: Prodotti di TEST a supporto dell adesione ai servizi Indice 1 INTRODUZIONE... 2 2 CLIENT SOAP... 2 2.1 INSTALLAZIONE DEL CLIENT SOAP... 2 2.1.1 PREREQUISITI...

Dettagli

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

Dettagli

RILEVAZIONE PRESENZE SPECIFICHE TECNICHE COLLOQUIO

RILEVAZIONE PRESENZE SPECIFICHE TECNICHE COLLOQUIO 1)d ALLEGATO 14 RILEVAZIONE PRESENZE SPECIFICHE TECNICHE COLLOQUIO TRA IL SISTEMA INFORMATICO DEL COMUNE ED IL SISTEMA INFORMATICO DELLA SOCIETA PREPOSTA AL SERVIZIO DI REFEZIONE vers. 2.2 Indice 1. SCOPO

Dettagli

Specifiche di invocazione del sistema di monitoraggio e controllo servizi CART

Specifiche di invocazione del sistema di monitoraggio e controllo servizi CART Regione Toscana Specifiche di invocazione del sistema di monitoraggio e controllo servizi CART Stato del documento Definitiva Versione del documento 1.8 Data 29/05/13 Documento Acronimo del documento Specifiche

Dettagli

A2A Specifiche Web Services

A2A Specifiche Web Services A2A Specifiche Web Services Contenuti 1 CONTENUTI...1 1 INTRODUZIONE...3 2 UPLOAD SEGMENTATO...5 2.1 RICHIESTA UPLOAD SEGMENTATO...5 2.1.1 Input del WS...5 2.1.2 Output del WS...6 2.2 UPLOAD SEGMENTATO...7

Dettagli

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

Dettagli

L Iniziativa egovernment.net per l Italia. Porte di Dominio per la Cooperazione Applicativa Allegato 2

L Iniziativa egovernment.net per l Italia. Porte di Dominio per la Cooperazione Applicativa Allegato 2 L Iniziativa egovernment.net per l Italia Porte di Dominio per la Cooperazione Applicativa Allegato 2 Porta di Dominio STK Versione 1.0, Aprile 2002 Soluzioni per l Interoperabilità e la Cooperazione Applicativa

Dettagli

Web Service. Massimo Martinelli Massimo.Martinelli@isti.cnr.it

Web Service. Massimo Martinelli Massimo.Martinelli@isti.cnr.it 29/05/2010, Area Ricerca CNR, Pisa Web Service Introduzione Massimo Martinelli Massimo.Martinelli@isti.cnr.it Consiglio Nazionale delle Ricerche - CNR Istituto di Scienza e Tecnologie della Informazione

Dettagli

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.

Dettagli

Web Services. Tecniche di Programmazione avanzata Corso di Laurea Specialistica in Ingegneria Telematica Università Kore Enna A.A.

Web Services. Tecniche di Programmazione avanzata Corso di Laurea Specialistica in Ingegneria Telematica Università Kore Enna A.A. Tecniche di Programmazione avanzata Corso di Laurea Specialistica in Ingegneria Telematica Università Kore Enna A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it

Dettagli

Plus srl :: www.conplus.it :: info@conplus.it :: Via Morgagni, 4/A 37135 Verona :: Tel. +39 045 580 491 :: Fax 045 82 78 722

Plus srl :: www.conplus.it :: info@conplus.it :: Via Morgagni, 4/A 37135 Verona :: Tel. +39 045 580 491 :: Fax 045 82 78 722 PMF Web-Service Quick-Start Guide Guida Introduttiva Cliente Redatto da Francesco Buratto Redatto il 01 gennaio 2011 Riferimento PMF 2011 Introduzione PMFWS è un web-service HTTP che espone un interfaccia

Dettagli

Tutorial di configurazione e programmazione di OpenSPCoop. Tutorial di configurazione e programmazione di OpenSPCoop

Tutorial di configurazione e programmazione di OpenSPCoop. Tutorial di configurazione e programmazione di OpenSPCoop i Tutorial di configurazione e programmazione di OpenSPCoop ii Copyright 2005-2008 Link.it s.r.l. iii COLLABORATORI TITOLO : Tutorial di configurazione e programmazione di OpenSPCoop AZIONE NOME DATA FIRMA

Dettagli

Realizzazione di un sistema per l archiviazione, la conservazione sostitutiva e la dematerializzazione dei documenti

Realizzazione di un sistema per l archiviazione, la conservazione sostitutiva e la dematerializzazione dei documenti 1/27 PROGETTO AIRUMBRIA la conservazione sostitutiva e la dematerializzazione dei documenti MODULI SW REALIZZATI E FUNZIONANTI DEL SERVIZIO DI CONSERVAZIONE - (documento 6.6.1) 2/27 Data: 1/6/2011 Compilato:

Dettagli

Web Services. Ing. Enrico Oliva Phd student, DEIS eoliva@deis.unibo.it

Web Services. Ing. Enrico Oliva Phd student, DEIS eoliva@deis.unibo.it Web Services Ing. Enrico Oliva Phd student, DEIS eoliva@deis.unibo.it 1 Web Services I servizi Web permettono alle applicazioni di invocare operazioni direttamente sulla rete da diversi sistemi fornendo

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

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

Il Web-Service SDMX dell ISTAT

Il Web-Service SDMX dell ISTAT Il Web-Service SDMX dell ISTAT Versione: 1.0.0 Data: 05/06/2014 Autore: Approvato da: Modifiche Versione Modifiche Autore Data Indice dei contenuti 1 Introduzione... 4 2 Creazione dell esempio d uso...

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

ProgettoSMS. Manuale Gateway Web Services

ProgettoSMS. Manuale Gateway Web Services ProgettoSMS Manuale Gateway Web Services Indice Indice... 2 Introduzione... 3 http Web Services... 4 Risposta... 4 Descrizione delle costanti... 5 AnswerRecipientType... 5 ErrorID... 5 ProtocolType...

Dettagli

Specifiche tecniche per il controllo e la trasmissione telematica delle pratiche di Comunicazione Unica

Specifiche tecniche per il controllo e la trasmissione telematica delle pratiche di Comunicazione Unica Specifiche tecniche per il controllo e la trasmissione telematica delle pratiche di Comunicazione Unica 1/20 1.1 Modifiche Documento Descrizione Modifica Edizione Data Prima emissione 1 28/07/2008 1.2

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

Web Service per il controllo e la trasmissione telematica delle pratiche di Comunicazione Unica

Web Service per il controllo e la trasmissione telematica delle pratiche di Comunicazione Unica Web Service per il controllo e la trasmissione telematica delle pratiche di Comunicazione Unica Versione: 3 Data: 16/10/2014 Autore: InfoCamere 1. Introduzione al documento...3 1.1 Modifiche al documento...

Dettagli

Web Services Servizio Telematico Dogane

Web Services Servizio Telematico Dogane Web Services Servizio Telematico Dogane MANUALE PER L'UTENTE Pagina 1 di 21 Indice 1 Introduzione... 3 2 Test funzionale dei web services... 6 3 Creazione del client... 10 3.1 Soluzioni Open Source...

Dettagli

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

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

Dettagli

Interfaccia SOAP del FUSC. Versione 3.10

Interfaccia SOAP del FUSC. Versione 3.10 Interfaccia SOAP del FUSC Versione 3.10 Indice 1 Introduzione... 4 2 Descrizione... 5 2.1 Condizioni per l utilizzo del web service... 5 2.2 Il server SOAP... 5 2.3 Attivazione del web service... 5 2.3.1

Dettagli

Spring WS Sviluppare WebService in Java

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

Dettagli

Tutorial di configurazione e programmazione di OpenSPCoop. Tutorial di configurazione e programmazione di OpenSPCoop

Tutorial di configurazione e programmazione di OpenSPCoop. Tutorial di configurazione e programmazione di OpenSPCoop i Tutorial di configurazione e programmazione di OpenSPCoop ii Copyright 2005-2011 Link.it s.r.l. iii Indice 1 Introduzione 1 2 Ambiente di sviluppo 1 3 Presentazione degli scenari di esempio 2 4 Comunicazione

Dettagli

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

PROGETTO TESSERA SANITARIA SPECIFICHE TECNICHE PER LA TRASMISSIONE ALL INPS DEI CERTIFICATI DI MALATTIA, COMUNICAZIONI DI INIZIO RICOVERO E

PROGETTO TESSERA SANITARIA SPECIFICHE TECNICHE PER LA TRASMISSIONE ALL INPS DEI CERTIFICATI DI MALATTIA, COMUNICAZIONI DI INIZIO RICOVERO E PROGETTO TESSERA SANITARIA SPECIFICHE TECNICHE PER LA TRASMISSIONE ALL INPS DEI CERTIFICATI DI MALATTIA, COMUNICAZIONI DI INIZIO RICOVERO E CERTIFICATI DI MALATTIA IN SEDE DI Pag. 2 di 51 INDICE 1. REVISIONI

Dettagli

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

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

Dettagli

PROGETTO TESSERA SANITARIA. Schema dati spesa sanitaria di cui art. 3 comma 3 D.ls 175/2014

PROGETTO TESSERA SANITARIA. Schema dati spesa sanitaria di cui art. 3 comma 3 D.ls 175/2014 PROGETTO TESSERA SANITARIA Pag. 2 di 23 REVISIONI DEL DOCUMENTO... 3 1. INTRODUZIONE... 4 2. GENERALITA... 5 3. STANDARD TECNICI... 6 4. INVIO DEI DATI DI SPESA... 7 4.1. CARATTERISTICHE... 7 4.2. ACCESSO

Dettagli

Parte II: Reti di calcolatori Lezione 10

Parte II: Reti di calcolatori Lezione 10 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 10 Giovedì 3-04-2014 1 Reti per la distribuzione

Dettagli

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

Dettagli

ZTL Firenze Inserimento Automatico

ZTL Firenze Inserimento Automatico ZTL Firenze Inserimento Automatico Introduzione In seguito alla variazione dell ordinanza del giugno 2011 che regola la modalità di rilascio dei permessi portale per le categorie abilitate, non è più possibile

Dettagli

RMI. Java RMI RMI. G. Prencipe prencipe@di.unipi.it

RMI. Java RMI RMI. G. Prencipe prencipe@di.unipi.it Java Remote Method Invocation -- RMI G. Prencipe prencipe@di.unipi.it RMI RMI è una tecnologia JAVA che permette a una JVM di comunicare con un altra JVM per farle eseguire metodi È possibile che oggetti

Dettagli

Test di unità con JUnit4

Test di unità con JUnit4 Test di unità con JUnit4 Richiamo sul test di unità Il test d unità è una metodologia che permette di verificare il corretto funzionamento di singole unità di codice in determinate condizioni. Nel caso

Dettagli

INF-1: Specifiche Tecniche di Interfaccia

INF-1: Specifiche Tecniche di Interfaccia INF-1: Specifiche tecniche di Interfaccia INF-1: Specifiche Tecniche di Interfaccia Versione 1.1 Nome doc.: INF-1 Specifiche Interfaccia v1.0.doc Edizione: 1.0 Data emissione: 12/1/2007 INDICE Modifiche

Dettagli

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità:

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità: 7 Esercitazione (svolta): due possibilità: Java RMI: callback Molte applicazioni richiedono un meccanismo publish/subscribe I partecipanti (client) necessitano di notifiche da parte del coordinatore (server)

Dettagli

SOAP e Web Services. SOAP: introduzione

SOAP e Web Services. SOAP: introduzione SOAP e Web Services 1 SOAP: introduzione Attualmente le applicazioni distribuite rappresentano una grossa parte della produzione software. Inoltre lo sviluppo di Internet e delle Intranet rende utile creare

Dettagli

Gestione delle Eccezioni

Gestione delle Eccezioni Gestione delle Eccezioni Condizioni di Errore Una condizione di errore in un programma può avere molte cause Errori di programmazione Divisione per zero, cast non permesso, accesso oltre i limiti di un

Dettagli

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it SMS API Documentazione Tecnica YouSMS SOAP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione

Dettagli

Programmazione Java: Variabili membro, Metodi La parola chiave final

Programmazione Java: Variabili membro, Metodi La parola chiave final Programmazione Java: Variabili membro, Metodi La parola chiave final romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap Definire una classe» Variabili membro» Metodi La parola chiave

Dettagli

1. Accordo di servizio Richiesta Indirizzi PEC CAD Art6 [concessionario del servizio di posta certificata al cittadino]

1. Accordo di servizio Richiesta Indirizzi PEC CAD Art6 [concessionario del servizio di posta certificata al cittadino] Allegato Tecnico 1. Accordo di servizio Richiesta Indirizzi PEC CAD Art6 [concessionario del servizio di posta certificata al cittadino]

Dettagli

Compute engine generici in RMI

Compute engine generici in RMI Compute engine generici in RMI Esempio: Calcolo del prodotto scalare Un unico server offre il servizio di calcolo del prodotto scalare tra vettori di interi Un client richiede al server il calcolo del

Dettagli

Architetture orientate ai servizi

Architetture orientate ai servizi Architetture orientate ai servizi 1 Web Service Nuovo paradigma di sistema informativo basato su componenti software distribuiti I Web Service sono applicazioni indipendenti, modulari, autodescrittive,

Dettagli

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

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

Dettagli

Java: Compilatore e Interprete

Java: Compilatore e Interprete Java: Compilatore e Interprete Java Virtual Machine Il bytecode non è Linguaggio Macchina. Per diventarlo, deve subire un ulteriore trasformazione che viene operata dall interprete Java in modalità JIT

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

Organizzazione della lezione. Lezione 18 Remote Method Invocation - 6. (con callback) L accesso al registry per il rebind()

Organizzazione della lezione. Lezione 18 Remote Method Invocation - 6. (con callback) L accesso al registry per il rebind() Organizzazione della lezione Lezione 18 Remote Method Invocation - 6 Vittorio Scarano Corso di Programmazione Distribuita (2003-2004) Laurea di I livello in Informatica Università degli Studi di Salerno

Dettagli

Concetti Base Eccezioni Eccezioni e Metodi Gerarchia di Eccezioni. Java: Eccezioni. Damiano Macedonio

Concetti Base Eccezioni Eccezioni e Metodi Gerarchia di Eccezioni. Java: Eccezioni. Damiano Macedonio Dipartimento di Informatica, Università degli Studi di Verona Corso di Programmazione per Bioformatica lezione del 30 maggio 2014 Introduzione Un programma diviso in sezioni distinte Un approccio alla

Dettagli

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); }

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); } import java.util.*; class coda * Questa classe contiene tutti i metodi per la gestione della coda * @author D'Ambrosio Giovanni Classe 4D I.T.I.S. Grottaminarda * @version 26/02/2010 * VETTORE DINAMICO

Dettagli

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

Dettagli

Web Services GME. data: 27-feb-04 RISERVATI TUTTI I DIRITTI A TERMINE DI LEGGE, VIETATA LA RIPRODUZIONE E LA DIVULGAZIONE

Web Services GME. data: 27-feb-04 RISERVATI TUTTI I DIRITTI A TERMINE DI LEGGE, VIETATA LA RIPRODUZIONE E LA DIVULGAZIONE data: 27-feb-04 INDICE 1. Introduzione...3 1.1 Scopo... 3 1.2 DEFINIZIONI & ACRONIMI... 3 1.3 Documenti di riferimento... 3 2. Il contesto di riferimento...4 3. Funzioni esposte dal GMEWS...6 3.1 Descrizione...

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

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

Dettagli

WebCare. Specifiche Tecniche recupero dati per tariffazione. Redatto da: STUDIOFARMA 28 MAGGIO 2009 Verificato da: Approvato da:

WebCare. Specifiche Tecniche recupero dati per tariffazione. Redatto da: STUDIOFARMA 28 MAGGIO 2009 Verificato da: Approvato da: WebCare Specifiche Tecniche recupero dati per tariffazione Progetto: WEBCARE 2 Versione 1.3 Data 05 AGOSTO 2011 Redatto da: STUDIOFARMA 28 MAGGIO 2009 Verificato da: Approvato da: CRONOLOGIA DELLE VERSIONI

Dettagli

PROGETTO TESSERA SANITARIA

PROGETTO TESSERA SANITARIA PROGETTO TESSERA SANITARIA WEB SERVICES PER LA VISUALIZZAZIONE E LO SCARICO DELLE RICEVUTE DI ATTESTAZIONE DELLE OPERAZIONI E DELLE TRANSAZIONI EFFETTUATE SULLE RICETTE DEMATERIALIZZATE (DECRETO 2 NOVEMBRE

Dettagli

Operazioni di input/output. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

Operazioni di input/output. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Operazioni di input/output Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Input /Output introduzione Per ottenere delle informazioni un programma apre un flusso (Stream)

Dettagli

QUEUE : considerazioni. QUEUE : considerazioni. QUEUE : esempio. QUEUE : esempio

QUEUE : considerazioni. QUEUE : considerazioni. QUEUE : esempio. QUEUE : esempio QUEUE : considerazioni QUEUE : considerazioni Si è realizzata una struttura dati complessa utilizzandone una primitiva, l array. Il pregio di tale implementazione è il basso costo computazionale, mentre

Dettagli

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete La prima applicazione Java Programma MyFirstApplication Il programma visualizza una finestra vuota sullo schermo. Importo il package delle classi usate nel seguito. Dichiaro la classe MyFirstApplication

Dettagli

Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione

Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione Un ambiente di esecuzione che gestisce o naming di oggetti, sicurezza, concorrenza, transazioni, persistenza, distribuzione oggetti (location

Dettagli

Organizzazione della lezione. 15. Java Remote Method Invocation (3) Lo schema del Factory Design Pattern - 1. Factory design pattern

Organizzazione della lezione. 15. Java Remote Method Invocation (3) Lo schema del Factory Design Pattern - 1. Factory design pattern Organizzazione della lezione 15. Java Remote Method Invocation (3) Vittorio Scarano Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Il design pattern

Dettagli

Multithreading in Java. Fondamenti di Sistemi Informativi 2014-2015

Multithreading in Java. Fondamenti di Sistemi Informativi 2014-2015 Multithreading in Java Fondamenti di Sistemi Informativi 2014-2015 Multithreading La programmazione concorrente consente di eseguire più processi o thread nello stesso momento. Nel secondo caso si parla

Dettagli

Relazione sulla tecnologia. Giacomo Sacchetti Imad Zaza

Relazione sulla tecnologia. Giacomo Sacchetti <sacchetti@nepero.net> Imad Zaza <slackzaza@gmail.com> Relazione sulla tecnologia Giacomo Sacchetti Imad Zaza 22 ottobre 2006 2 Indice 1 Gli Web Services 7 1.1 Introduzione............................... 7 1.2 World

Dettagli

Mobilità di Codice. Massimo Merro Programmazione di Rete 128 / 144

Mobilità di Codice. Massimo Merro Programmazione di Rete 128 / 144 Mobilità di Codice Abbiamo già visto come un dato host possa trasmettere un oggetto (serializzabile) ad un altro host. Quest ultimo potrà eseguire l oggetto pur non possedendo il bytecode della classe

Dettagli

Specifica i tipi di oggetti a creare, utilizzando un istanza prototipo, e crea nuove istanze tramite la copia di questo prototipo.

Specifica i tipi di oggetti a creare, utilizzando un istanza prototipo, e crea nuove istanze tramite la copia di questo prototipo. Prototype 28 4. Prototype (GoF pag. 117) 4.1. Descrizione 4.2. Esempio Specifica i tipi di oggetti a creare, utilizzando un istanza prototipo, e crea nuove istanze tramite la copia di questo prototipo.

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA6 A1 I file testo 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Modello produttore consumatore Operazioni logiche su struttura file 2 1 Introduzione

Dettagli

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD La prima applicazione Java con NetBeans IDE Dott. Ing. M. Banci, PhD Creare la prima applicazione 1. Creare un progetto: Quando si crea un progetto IDE occorre creare un ambiente nel quale costruire e

Dettagli

Web Service: Introduzione. Algoritmi e sistemi di elaborazione - Vittorio Maniezzo - Università di Bologna

Web Service: Introduzione. Algoritmi e sistemi di elaborazione - Vittorio Maniezzo - Università di Bologna Web Service: Introduzione 1 Contenuti Background.NET Framework ASP.NET Web Service Concetti e architetture Progettazione e sviluppo di Web Service Utilizzo di Web Service 2 Sezione 1: Introduzione Inquadramento

Dettagli

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

Dettagli

Gestione delle eccezioni in Java

Gestione delle eccezioni in Java Gestione delle eccezioni in Java - Introduzione al concetto di eccezioni E possibile definire un eccezione come un situazione imprevista che il flusso di un applicazione può incontrare. È possibile gestire

Dettagli

Activation In sintesi: è inutile avere attivi degli oggetti se non vengono utilizzati

Activation In sintesi: è inutile avere attivi degli oggetti se non vengono utilizzati Activation In generale i Sistemi ad oggetti distribuiti sono progettati per lavorare con oggetti persistenti. Dato che questi sistemi saranno composti da migliaia (forse milioni) di tali oggetti, sarebbe

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Guida alla programmazione e integrazione di servizi in OpenSPCoop. Guida alla programmazione e integrazione di servizi in OpenSPCoop

Guida alla programmazione e integrazione di servizi in OpenSPCoop. Guida alla programmazione e integrazione di servizi in OpenSPCoop i Guida alla programmazione e integrazione di servizi in OpenSPCoop ii Copyright 2005-2008 Link.it s.r.l. iii COLLABORATORI TITOLO : Guida alla programmazione e integrazione di servizi in OpenSPCoop AZIONE

Dettagli

Introduzione a Classi e Oggetti

Introduzione a Classi e Oggetti Introduzione a Classi e Oggetti Oggetto: concetto astratto Entità di un programma dotata di tre proprietà caratteristiche stato informazioni conservate nell oggetto condizionano il comportamento dell oggetto

Dettagli

Parte II: Reti di calcolatori Lezione 12

Parte II: Reti di calcolatori Lezione 12 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Parte II: Reti di calcolatori Lezione 12 Giovedì 16-04-2015 1 Confronto architetture C/S e

Dettagli

Laboratorio di Informatica Lezione 4

Laboratorio di Informatica Lezione 4 Laboratorio di Informatica Lezione 4 Cristian Consonni 28 ottobre 2015 Cristian Consonni Laboratorio di Informatica, Lezione 4 1 / 42 Outline 1 Canali standard 2 Input da tastiera 3 Output 4 Esercizi (parte

Dettagli

PAG. 1 DI 39 20 LUGLIO 2010 PROGETTO TESSERA SANITARIA WEB SERVICES PER LA TRASMISSIONE DEI CERTIFICATI DI MALATTIA ALL INPS VER 1.

PAG. 1 DI 39 20 LUGLIO 2010 PROGETTO TESSERA SANITARIA WEB SERVICES PER LA TRASMISSIONE DEI CERTIFICATI DI MALATTIA ALL INPS VER 1. PAG. 1 DI 39 PROGETTO TESSERA SANITARIA WEB SERVICES PER LA TRASMISSIONE DEI CERTIFICATI DI MALATTIA ALL INPS VER 1.5 DEI CERTIFICATI DI MALATTIA ALL INPS PAG. 2 DI 39 INDICE 1. REVISIONI DEL DOCUMENTO

Dettagli

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

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

Dettagli

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

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

Dettagli

Esercizi della lezione 5 di Java

Esercizi della lezione 5 di Java Esercizi della lezione 5 di Java Esercizio 5 Create il tipo di dato Counter dell Esercizio 1 come sottoclasse del tipo di dato SimpleCounter. Esercizio 1 Create un tipo di dato Counter che abbia: un valore

Dettagli

Esercitazione di Sistemi Distribuiti: Java RMI

Esercitazione di Sistemi Distribuiti: Java RMI Esercitazione di Sistemi Distribuiti: Java RMI Anno Accademico 2007-08 Marco Comerio comerio@disco.unimib.it Richiami Teorici Oggetti distribuiti 2-16 Usuale organizzazione di un oggetto remoto con un

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

PROGETTO TESSERA SANITARIA

PROGETTO TESSERA SANITARIA PROGETTO TESSERA SANITARIA WEB SERVICES PER LA COMUNICAZIONE DELL AUTORIZZAZIONE CHE UN MEDICO TITOLARE DEVE FORNIRE AL SISTEMA TS AFFINCHE UN MEDICO SUO SOSTITUTO POSSA PRESCRIVERE RICETTE DEMATERIALIZZATE

Dettagli

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni Web service Hello world con Visual Studio 2012 Si tratta di un semplice esempio di web service, infatti come tutti I programmi

Dettagli

Cifratura simmetrica

Cifratura simmetrica Cifratura Cifratura simmetrica Alice canale insicuro Bob 2 Cifratura simmetrica m Algoritmo di decifratura m Alice canale insicuro Algoritmo di cifratura Bob 3 Cifrari simmetrici chiave privata k chiave

Dettagli

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

Dettagli

TFA 42 Sistemi e Reti di Calcolatori per la Didattica

TFA 42 Sistemi e Reti di Calcolatori per la Didattica Università degli Studi di Pisa 42 Sistemi e Reti di Calcolatori per la Didattica 29/03/2013 Laura Ricci Laura Ricci 1 DNS: DOMAIN NAME SYSTEM Persone: molti identificativi: o # CF, nome, # passaporto Host

Dettagli

Guida alla programmazione e integrazione di servizi in OpenSPCoop. Guida alla programmazione e integrazione di servizi in OpenSPCoop

Guida alla programmazione e integrazione di servizi in OpenSPCoop. Guida alla programmazione e integrazione di servizi in OpenSPCoop i Guida alla programmazione e integrazione di servizi in OpenSPCoop ii Copyright 2005-2011 Link.it s.r.l. iii Indice 1 Introduzione 1 2 Modalità d integrazione trasparente 1 3 Modalità d integrazione tramite

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni server

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni server Versione 30.5.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/: applicazioni 1 La logica dei socket Abbiamo visto che un applicazione client si connette

Dettagli

Prova d Esame 07.04.2006 Compito A

Prova d Esame 07.04.2006 Compito A DOMANDA 1 (6 punti) Si analizzi il codice seguente e si scriva l output prodotto dai metodi main public class General { public static String s1 = "Ciao"; protected int n; public General() { n = 1; public

Dettagli

WEB SERVICES SERVIZI PER RICEZIONE ED ELABORAZIONE MESSAGGI AMBIENTE REALE

WEB SERVICES SERVIZI PER RICEZIONE ED ELABORAZIONE MESSAGGI AMBIENTE REALE Pag. 1 di 11 WEB SERVICES SERVIZI PER RICEZIONE ED ELABORAZIONE MESSAGGI AMBIENTE REALE Pag. 1 di 11 Pag. 2 di 11 1 GENERALITÀ... 3 1.1 CANALI DI COMUNICAZIONE DEI SISTEMI... 3 2 SOA DOMINIO ESTERNO...

Dettagli