Candidato Emanuele Fambrini

Slides:



Advertisements
Presentazioni simili
© 2010 Colt Telecom Group Limited. All rights reserved. Cloud Computing Lapproccio Colt Dionigi Faccedna.
Advertisements

Interfacce Java.
Services For Unix 3.5 Lintegrazione di piattaforme e applicazioni UNIX con Windows Server 2003 Lintegrazione di piattaforme e applicazioni UNIX con Windows.
TechNet Integration Workshop
ASP.NET – Web Forms Davide Vernole.NET MVP. Di cosa parleremo Introduzione ad ASP.NET ASP.NET, dietro le quinte Componenti principali di una applicazione.
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
UDDI (Universal Description, Discovery and Integration Protocol) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
Web Services.
E.Mumolo, DEEI Player Stage E.Mumolo, DEEI
Introduzione ai Web Services. E' un nuovo meccanismo RPC ottimizzato per l'uso in Internet Un qualunque Client su una generica piattaforma deve poter.
Seam.
Microsoft Robotics Studio Marco Petrucco Microsoft Student Partner - Udine.
Valutazione del Globus Toolkit Massimo Sgaravatto INFN Padova.
EJB Enterprise Java Beans B. Pernici. Approccio Java.
Model – View - Controller
Unified Modeling Language class C {…} class B extends C {…} Esiste una notazione grafica per mostrare le relazioni di ereditarietà. Object StringC B Tutte.
J0 1 Marco Ronchetti Java Threads & Sincronizzazione.
Introduzione alle griglie computazionali - a.a LEZIONE LEZIONE N. 12 Grid Monitoring modello GMA GridICE GridICE demo Introduzione alle griglie.
1. Conoscere luso delle collezioni in Java Comprendere le principali caratteristiche nelle varie classi di Collection disponibili Saper individuare quali.
Citrix Metaframe. Metaframe è la soluzione client-server prodotta dalla Citrix in grado di rendere disponibili applicazioni e desktop a qualsiasi dispositivo.
Università La Sapienza Ingegneria del Software I 1 Ingegneria del software I Seminario 2: Microsoft.NET.
Università La Sapienza Ingegneria del Software I 1 Ingegneria del software I Seminario 3:Enterprise Java Beans.
Introduzione Grid1 Introduzione ai Sistemi Grid. Introduzione Grid2 Generalità Un sistema Grid permette allutente di richiedere lesecuzione di un servizio.
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
Architettura Java/J2EE
Java base VI: Gestione I/O. Argomenti Introdurre le API per linput e output in Java.
Componenti dell’architettura Oracle
ETEN – Re-Public – RePublic website 1\5 eTEN Progetto Re-Public – RePublic website Workshop finale Dott. Marco Sentinelli – Galgano International Roma,
1 © 2013 Cobra Italia SpA All rights reserved Cobra group website Gennaio 2013.
MIC 2008, Roma Antonio Pistoia Università Politecnica delle Marche MOODLELab Uno strumento per MOODLE per la gestione dei telelaboratori durante i corsi.
Progetto Rover – Fase 1. Obiettivo e Vincoli Obiettivo è creare applicazione capace di controllare in remoto un Rover, dotato di torretta sensoriale e.
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea Specialistica in Ingegneria Informatica Analisi e valutazione.
7 cose da sapere su Volume Activation con Windows 7 © 2009 Microsoft Corporation. Tutti i diritti riservati. Come professionista IT, devi sapere che l'attivazione.
Filtered Index and Statistics Filtered Indexes Sergio Govoni
Sito IntergruppoParma.it Nuovo Intergruppo Parma.
Alcune problematiche di replicazione dati in unorganizzazione geograficamente distribuita Collaborazione CASPUR - ENEA Silvia Eccher - CASPUR Franco Iannone.
Creare e gestire un sito Web scolastico P.O.N ITIS Marconi Nocera a.s
Presenta Progetto Hyper-Club. Hyper-code Via Domenico Mercante 6, Verona (VR) – Tel Cell mail. Chi.
Presenta Progetto Web Marketing 3.0. Hyper-code Via Domenico Mercante 6, Verona (VR) – Tel Cell mail.
Tableau de bord Cruscotto di direzione
Sistema Informativo per Associazioni Agricole AgriManager Progetto realizzato da in collaborazione con.
Sviluppo di una Xlet per la TV digitale terrestre Vademecum della regione marche 2006 Ventura Luca.
PON LEW Landslide Early Warning SAL III Aprile 2013 Autostrade Tech S.p.A. PON LEW Landslide Early Warning SAL III Aprile 2013 Autostrade Tech S.p.A. SISTEMI.
Firenze – Festival della Creatività 2009 Comm.it s.r.l. – Ing. Davide Rogai, Ph.D. – Software >> eyelander tracking semplice con il tuo cellulare.
Innovazioni versione 4 Bari, 17 ottobre Innovazioni versione 4 Il menù dinamico secondo logica operativa Il ruolo dei Ruoli Facilitare la scelta.
Marco Gribaudo - thanks to C. Gena e R. Damiano 1 Le basi del linguaggio HTML Marco Gribaudo
Project Review Località Sciistica 21 Dicembre 2011.
INTERNET Internet è una rete a livello mondiale che permette alle persone di comunicare ed ad accedere a banca dati da qualunque parte del mondo e su qualunque.
Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa La mia scuola ha un sito Web: modelli per la qualità dei siti (Ingegneria del Web)
LE RETI INFORMATICHE.
Andrea Petricca Problematiche di rete nella sperimentazione di file-system distribuiti su WAN per applicazioni di GRID-Computing Rapporto trimestrale attività
INTERNET Antonio Papa Classe 2^ beat I.S.I.S. G. Meroni a.s. 2007/2008.
La nascita di internet Luigi Di Chiara Arci Solidarietà Napoli.
Le reti informatiche Modulo 7. Internet Il browser La navigazione Motori di ricerca Raccogliere dati La stampa sommario.
AC mobile Versione 1.1 AC mobile Guida per l’utente
PROGETTO DI STRUMENTI PER LA CONFIGURAZIONE DI APPLICAZIONI JAVA ENTERPRISE Anno Accademico 2006 / 2007 Sessione III FACOLTÀ DI INGEGNERIA CORSO DI LAUREA.
Voting Sistema di votazione telematica. Che cosè Sito web per gestire votazioni tramite internet La sezione amministratore permette di progettare lo scenario.
ICF e Politiche del Lavoro
Attività Formativa Sviluppo di un WORKFLOW ENGINE di Dott. Riccardo Gasperoni Alessandro Caricato Gabriele Trabucco in collaborazione con Progesi S.p.A.
Facelets case study: Ricettario Docente: Gabriele Lombardi
Visual Studio Tools for Office: Developer Solutions Platform Fulvio Giaccari MCSD.NET / MCT Responsabile Usergroup ShareOffice Blog:
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
Introduzione al linguaggio C. Cos’e’ il C? Il C e’ un linguaggio ad alto livello Un compilatore C prende in input un file contenente codice sorgente C.
Collection & Generics in Java
Fondamenti di informatica T-A Esercitazione 7 : Collezioni AA 2012/2013 Tutor : Domenico Di Carlo.
Java Enterprise Edition
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
Piattaforma per industrie stampaggio
Introduzione alle griglie computazionali
Sviluppo di un'applicazione web per l'utilizzo del framework SparkER
Transcript della presentazione:

Candidato Emanuele Fambrini Università di Pisa Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea Progettazione e realizzazione di un’interfaccia Web per un servizio di consistenza su architetture Grid Candidato Emanuele Fambrini Relatori Prof. Andrea Domenici, Prof. Cinzia Bernardeschi, Ing. Gianni Pucciani Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Interfaccia Web per un servizio di consistenza su Grid E’ stata sviluppata un’interfaccia Web per un servizio di consistenza dati su Grid L’obbiettivo è fornire agli utenti e amministratori del servizio un’interfaccia più amichevole rispetto a quella attualmente esistente, a linea di comando L’interfaccia è stata realizzata sfruttando le tecnologie: Web Services Java Server Pages Java Beans Expression Language Globus Toolkit Requisiti di sicurezza Requisiti, architettura e struttura del progetto Messa in opera ed utilizzo Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Griglie Computazionali Il termine “Grid” (griglia) nasce da un paragone con la rete di distribuzione dell’energia elettrica. Una “Grid” è un’infrastruttura per condividere risorse computazionali e capacità di memorizzazione dei dati. Così come la rete elettrica distribuisce energia proveniente da diverse fonti, “Grid” fornisce risorse di calcolo e dati provenienti da diverse organizzazioni geograficamente sparse. Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Replica Consistency Service CONStanza/1 Sviluppato presso l’INFN www.pi.infn.it/constanza/ Garantisce la consistenza fra le repliche in un ambiente Grid Replicazione file e database Infrastruttura di comunicazione sviluppata utilizzando il toolkit gSOAP Accessibile come Web Service Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Replica Consistency Service CONStanza/2 Le componenti principali di CONStanza sono: Global Replica Consistency Service (GRCS) componente prioritaria e principale interfaccia verso gli utenti finali Local Replica Consistency Service (LRCS) registra, gestisce, aggiorna le repliche a livello locale Replica Consistency Catalogue (RCC) memorizza tutte le informazioni su tutte le repliche, come lo stato in cui si trovano e la loro localizzazione Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Architettura Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Subpackage Client Applicazioni cliente per il GRCS Permettono l’esecuzione dei metodi remoti definiti nel file header WRCS.gh Applicazioni cliente per il LRCS Permettono l’esecuzione dei metodi remoti definiti nel file header WLRCS.gh Possono essere invocate attraverso una Command Line Interface Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Java Server Pages e Java Beans JSP: Evoluzione delle Servlets Si presentano come combinazione di testo e tag Caratteristiche: Portabilità Riutilizzo del codice Facile separazione della parte logica dalla presentazione (look-and-feel) Java Beans: Costruttore vuoto Non deve avere variabili di stato public Per accedere alle variabili si utilizzano metodi di get pubblici (getNomeVariabile) Per settare le variabili si utilizzano metodi di set pubblici (setNomeVaribile) Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Web Services Un Web Service gestisce interazioni program-to-program via Web Alla base della comunicazione dei Web Service c’è SOAP, un protocollo basato su XML Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Web Service Description Language Linguaggio utilizzato per specificare la descrizione di un servizio Web Approccio strutturato per definire le interfacce dei servizi Web Facilita l’implementazione ed il mantenimento dei servizi Facilita l’utilizzo dei servizi Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Toolkit gSOAP e WSDL2Java Facilita la realizzazione di Web Service in C/C++ e di applicazioni cliente partendo dalla descrizione WSDL del servizio Permette di generare automaticamente la descrizione WSDL partendo dai file header che definiscono le funzionalità del servizio Web WSDL2Java: Tool di Apache Axis Genera una serie di classi Java attraverso cui accedere al servizio descritto dal file WSDL Le corrispondenze tra tipi WSDL e Java seguono la specifica JAX-RPC Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Requisiti di progetto L’utente attraverso un browser web può invocare i metodi cliente relativi al GRCS o al LRCS di CONStanza L’utente attraverso un’interfaccia web sceglie la funzione da eseguire ed imposta i dovuti parametri di ingresso attraverso form di input Ogni metodo remoto sia relativo al GRCS che al LRCS ha un’interfaccia web formata da una serie di form Ogni metodo ha una pagina web che mostra i risultati Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Funzionalità I metodi remoti del RCS CONStanza vengono chiamati attraverso classi JavaBean cliente Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Struttura Si hanno due packages principali: Grcs per le classi riguardanti il GRCS Lrcs per le classi relative al LRCS Il package Grcs è composto da tanti sottopackages, uno per ogni funzione cliente del GRCS di CONStanza Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

gSOAP utilizzo Il compilatore soapcpp2 elabora i file header che definiscono le funzionalità cliente di CONStanza: soapcpp2 WRCS.gh soapcpp2 WLRCS.gh Sono generate in automatico le descrizioni WSDL dei metodi remoti: WRCS.wsdl WLRCS.wsdl Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

WSDL2Java utilizzo genera le seguenti classi: Un’interfaccia Java per accedere ai metodi remoti Una classe Stub Un’interfaccia del servizio Una implementazione del servizio (locator) Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Diagramma delle classi Per ogni metodo del GRCS e del LRCS si ha una struttura di classi formata da: Una classe JavaBean che permette di chiamare un metodo specifico Una classe GsiPort che gestisce gli aspetti della sicurezza nella comunicazione con il RCS Le classi generate con il tool WSDL2Java Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Sicurezza Grid Security Infrastructure (GSI) Si usano le librerie messe a disposizione dal Commodity Grid (CoG) Kit fornito dal progetto Globus HTTPS con autenticazione sia del server che del cliente attraverso certificati Definizione di una propria libreria di Tag JSP per effettuare la convalida dei dati immessi nelle form di input Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Architettura Per ogni metodo remoto del GRCS o LRCS si hanno: Design Pattern MVC Modello: logica e dati dell’applicazione Vista: responsabile della visualizzazione delle informazioni all’utente Controllore: responsabile di gestire l’input prodotto dall’utente Per ogni metodo remoto del GRCS o LRCS si hanno: Una pagina JSP svolge il ruolo di Controllore permettendo l’inserimento di parametri di input attraverso form Una pagina JSP svolge il ruolo di Vista, visualizzando il risultato della chiamata all’utente Una classe JavaBean svolge il ruolo di Modello permettendo di chiamare un metodo del RCS Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Messa in opera L’applicazione creata viene resa utilizzabile attraveso il Servlet e JSP container Apache Tomcat: Il cliente attraverso il browser contatta Tomcat Tomcat provvede ad eseguire le pagine JSP Le pagine JSP eseguono i metodi delle classi JavaBeans Le classi JavaBeans chiedono l’esecuzione dei metodi remoti GRCS o LRCS su CONStanza Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Chiamata di un metodo di CONStanza attraverso Java Bean cliente Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

GRCS User Interface Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Pagina JSP Controllore Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Pagina JSP di Vista Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid

Conclusioni Problemi incontrati: Cliente Java – Server C++ Caratteristiche dell’applicazione: Interoperabilità Portabilità Separazione parte logica – parte grafica Accessibilità Facilità di uso Problemi incontrati: Cliente Java – Server C++ Corrispondenze tipi WSDL – Java Comunicazione del cliente Java con CGSI-gSOAP Soluzioni adottate: Uso di Tool JSP: JavaBeans, Expression Language Progetto e realizzazione di un'interfaccia Web per un servizio di consistenza su architetture Grid