Università di Bologna Scuola di Ingegneria e Architettura. Sistemi Distribuiti M A.A Esercitazione JBI

Documenti analoghi
Università degli Studi di Bologna Facoltà di Ingegneria. Sistemi Distribuiti M A.A Esercitazione JBI. Un tipico scenario di integrazione

Alma Mater Studiorum - Università di Bologna Scuola di Ingegneria e Architettura. Sistemi Distribuiti M A.A

Sistemi Distribuiti M A.A Esercitazione JBI. Un tipico scenario di integrazione

AscotWeb - mediatore Versione dicembre 2015

Cosa è importante: pom.xml Goal Plug-in Repository

SOA case study. Un esempio di progetto SOA. Le esperienze maturate sul campo. organizzato da:

INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE

8.A.8 Orchestratore Locale. ESB Piano dei test

INGEGNERIA DEI SISTEMI SOFTWARE E DEI SERVIZI DI RETE PROGETTO GQM + STRATEGIES. Luca Mastrogiovanni Marco Vasselli 16 Dicembre 2013

Java Web Services. Uso di Eclipse e Apache Axis

Sistemi Distribuiti M Proposte di Esercizio- Introduzione Generale

Liferay & Salesforce

Master Interoperabilità A.A Presentazione Lavoro Pratico 1 Interoperabilità Tecnologica (Prof. Roberto Beraldi) Maccaroni Danilo

Sistemi Distribuiti M Proposta di esercizio: Mapping Object-Relational attraverso Hibernate e JPA

REGIONE BASILICATA PROCEDURA APERTA (AI SENSI DEL D.LGS.163/2006 E S.M.I.)

Piattaforme Software Distribuite. Roberto Beraldi

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

Infrastruttura per la Cooperazione Applicativa

Seminario di Ingegneria del Software. Apache ServiceMix. Francesco D Addio, Danilo Ricci

Programmazione di servizi web SOAP

Password di accesso al database criptata

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria. Tecnologie Web T. Esercitazione opzionale Spring MVC

Smart Cities and Communities and Social Innovation Bando MIUR. D.D. 391/Ric. del 5 luglio Application Store

Corso Programmazione Java Avanzato

Università di Bologna CdS Laurea Magistrale in Ingegneria Informatica I Ciclo - A.A. 2010/2011

DIAGRAMMI DEI PACKAGE

Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit per lo sviluppo di interfacce utente con paradigma MVC.

Indice. Introduzione PARTE PRIMA PRELUDIO: SERVIZIO CON SORRISO 1

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione opzionale Spring MVC

Architettura dei sistemi software

La piattaforma integrata per dematerializzare e semplificare

Un nuovo approccio metodologico con FHIR

Processi BPEL. Obiettivi

Manuale utente Volta Control

Strumenti per lo sviluppo e la gestione di Ontologie

Esercitazione 3 Gnu Privacy Guard

Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC

Progetto d esame. La logica di gioco. Tecnologie e applicazioni web, a.a 2017/2018. Fase di posizionamento

Integration Software S.r.l.

2. Finalità generali previste dalle indicazioni nazionali

Ing. Fabio Cilento Via Antonio Cagnoni Roma C.F. CLNFBA77T06A091A P.IVA

Un architettura per la cooperazione di applicazioni: un approccio basato sulla migrazione di applicazioni Legacy

Eclipse e Subversion

Basi di Dati. Prof. Alfredo Cuzzocrea Università degli Studi di Trieste. Basi di Dati e Web. Credits to: Prof. M. Di Felice UniBO

L infrastruttura STIL. Presentazione dei risultati finali del progetto Alessandro Ricci Università di Bologna DEIS Bologna / Cesena

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

3.3.6 Gli operatori Le funzioni di accesso al tipo Le strutture di controllo Le funzioni

System Manual ESEMPI INTEGRAZIONE PRODOTTI. Utilizzo delle funzionalità SOAP nei moduli FactoryCast V3.1 in Excel, Internet Explorer e VBasic

Presentazione di Cedac Software

Il corso fornisce le competenze per progettare e sviluppare programmi usando WebSphere MQ.

Università degli Studi della Calabria Facoltà di Ingegneria. Corso di Diploma in Ingegneria Informatica TESI DI DIPLOMA

D 2.6 Sviluppo di unità di test e di report dell'integrazione dei servizi con Public Cloud esterni

Tecnologie per la Sicurezza L-S AA Anna Chiara Bellini

FILES. Componente per la gestione dei files in Joomla. Release di test per Joomla! 3.7.x. By Helios Ciancio

Prof. Pagani corrado JAVA

Android. Android e Rest

L IDE NETBEANS. (slide: A. Baratè) Programmazione per la Musica Adriano Baratè

SMS Gateway - Specifiche WS. Specifica Tecnica

Introduzione ORGANIZZAZIONE DEL LIBRO. Il libro è composto da 12 capitoli organizzati nelle tre parti seguenti:

Service Oriented Architecture

Introduzione. E un sistema EAI molto flessibile, semplice ed efficace:

APP TertiumBleScan e TertiumBleScanSwift per sistema operativo ios

Corso Programmazione Java Standard

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

GovPay 2.0. Manuale Installazione Sorgenti

Architettura esagonale

Servizio E-learning di Ateneo Piattaforma Moodle e L2L

Studio e realizzazione di un client per l'interoperabilità tra un archivio museale e un Data Provider OAI-PMH nell'ambito dell'architettura CART

03FYZ TECNICHE DI PROGRAMMAZIONE Esercitazione di Laboratorio 03 es.1 23 Marzo 2016

Estendere Rialto. Esercitazione Data Mining 5 Novembre

Fondamenti di Informatica T2 Modulo 2

Installazione. Eclipse. Workspace. Primo Avvio. Fondamenti di Informatica T2 Modulo 2. Università di Bologna A.A. 2008/2009

Download & Installazione di FileZilla

Metodi e Tecniche per il Riuso di componenti in Applicazioni Android

Programmazione dei socket con TCP #2

Seminari Quota - Utilizzi e Implementazione -

Indice generale Introduzione...vii Parte I Concetti e costrutti fondamentali... 1 Capitolo 1 Introduzione al linguaggio... 3

REGIONE BASILICATA UFFICIO S. I. R. Standard Tecnologici dei Sistemi Informativi

CREARE UNO SPAZIO DEI NOMI DFS (WINDOWS SERVER 2003 R2)

SMARTPHONE E TABLET FACILI!

Sistemi Distribuiti M

Agent#: un linguaggio di programmazione per lo sviluppo di agenti su piattaforma.net

Esercitazione 1 Crittografia Simmetrica

Creare client statici

KeySuite soluzione per la dematerializzazione e la gestione di processi di business! in ambito documentale!! Paolo Cappuccini Responsabile R&D KDM

Pagina 1 di 6. Client SOAP di test per i servizi del Sistema di Interscambio. Indice

Introduzione a DevOps

Agenda. Architettura. Contesto. Integrazione e SOA

EXTERNALAPI CLOUDLIFT. copia n Controllata non controllata Distribuita a: in forma data Firma. 00 X CLIENTI Elettronica 05/06/2017

Laboratorio di Sistemi Operativi a.a PROGETTO

6. Scheda di lavoro (potenziamento: la mia prima dll ) 10/10/2014

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

cordova - react - redux the mobile application

Transcript:

Università di Bologna Scuola di Ingegneria e Architettura Sistemi Distribuiti M A.A. 2014 2015 Esercitazione JBI Ing. Stefano Monti stefano.monti@epocaricerca.it

Un tipico scenario di integrazione Si supponga di dover integrare due applicazioni che attualmente dialogano tramite scambio di : applicazione A scrive su cartella homea applicazione B legge da cartella homeb attualmente, un processo di sistema monitora la cartella homea sposta da homea a homeb appena disponibili Scenario intrinsecamente asincrono e basato su scambio di messaggi introdurre un ESB JBI-compliant che sostituisca il processo di sistema approccio incrementale reimplementare lo scenario basilare estenderlo con funzionalità avanzate interfacce WS messaggistica JMS

Pattern di realizzazione in JBI 1) identificare i componenti necessari alla realizzazione della soluzione Binding Component (BC) e Service Engine opportuni (SE) es. interazione system, trasformazione di formato XSLT, ecc... 2) per ciascun componente scelto, creare una o più Service Unit (SU) secondo le specifiche JBI, cioè configurazioni specifiche del componente es. polling FS su cartella X, scrittura su cartella Y 3) una volta create tutte le SU necessarie, creare un Service Assembly (SA) JBI aggregato di service unit che realizza un determinato scenario di integrazione 4) caricare (deploy) la SA su container ESB es. Apache ServiceMix mette a disposizione una cartella hotdeploy per deploy a container attivo

Strumenti suggeriti Si suggerisce l'adozione di ESB Apache ServiceMix (v. 3.3.x) http://servicemix.apache.org Lista dei componenti (sia Binding Component che Service Engine) http://servicemix.apache.org/components-list.html ServiceMix caldeggia l'uso di Maven per creazione di progetti JBI archetipi Maven per la creazione di SU e SA compilazione e packaging plugin Maven per la creazione di.jar JBI compliant per SU ed SA Sono disponibili esempi nel tutorial di ServiceMix http://servicemix.apache.org/tutorials.html

Obiettivo 1 Realizzare spostamento di da cartella homea a homeb mediante ESB JBI-compliant poller writer polling App A homea App B homeb JBI ESB

Obiettivo 2 Aggiungere messaggistica tra poller e writer store di messaggi scambiati uso di una coda JMS Poller invia ciascun sia a writer che alla coda JMS può farlo poller direttamente? È necessario qualche altro componente? JMS queue poller polling writer App A homea App B homeb JBI ESB

Obiettivo 3 App B preleva messaggi dalla coda mediante Web Servces (eliminiamo l'integrazione old-style a scambio di!) Fetch_WS mette a disposizione un metodo per prelevare il primo messaggio dalla coda e restituirlo ad App B App B invoca Fetch_WS poller JMS queue Fetch WS polling writer App A homea App B homeb JBI ESB

Note all'obiettivo 3 1/2 Per la realizzazione di Fetch_WS, si suggerisce l'utilizzo dei componenti ServiceMix relativi ad Apache CXF componenti servicemix-cxf-* in ServiceMix http://cxf.apache.org Quanti e quali componenti JBI sono necessari? logica vera e propria di prelievo (implementazione WS) interazione via protocollo SOAP Suggerimenti sui componenti servicemix-cxf richiedono particolare attenzione alla consistenza dei namespace dichiarati per i WS richiedono di dichiarare e impacchettare i WSDL corretti dei WS all'interno delle SU che li usano Apache CXF mette a disposizione un tool per la generazione di un WSDL a partire dalla classe Java che lo implementa (annotazioni standard javax.jws.webservice)

Note all'obiettivo 3 2/2 Il WS deve interagire con la coda JMS secondo usuale pattern di reperimento messaggi da JMS Necessità di reperire la ConnectionFactory JMS (implem. ActiveMQ) usata in ServiceMix esiste un di conf. in ServiceMix che contiene la configurazione iniziale del registry JNDI... Necessità di reperire la coda: ServiceMix a default non pubblica i nomi delle code su registro JNDI; due opportunità pubblicare la coda su JNDI Utilizzare API esplicite di ActiveMQConnectionFactory per reperire la coda

Tips & Tricks In caso si utilizzino i plugin Maven per ServiceMix alcune recenti versioni dei plugin riferiscono delle librerie che al momento risultano corrotte (jar corrotti) in particolare, spring-support, spring-dao, xerces soluzione scaricare le versioni opportune dei pacchetti che risultano corrotte (vd. output di build Maven) dai relativi siti oppure da repository di pom/jar (es. www.jarvana.com, www.findjar.com) sostituire i jar funzionanti a quelli corrotti nel repository maven locale es. /home/<user>/.m2/repository/.../spring-support.jar