Vittorio Scarano. Università degli Studi di Salerno. Lezione 21 Enterprise JavaBeans (7)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Vittorio Scarano. Università degli Studi di Salerno. Lezione 21 Enterprise JavaBeans (7)"

Transcript

1 Lezione 21 Enterprise JavaBeans (7) Vittorio Scarano Corso di Sistemi Distribuiti ( ) Laurea Specialistica in Informatica Università degli Studi di Salerno

2 Obiettivo della lezione Presentare il terzo tipo di Enterprise JavaBeans: i Message-Driven Beans 2

3 Organizzazione della lezione I Message Driven Bean (MDB) Esempio di un MDB Deployment ed esecuzione 3

4 Integrazione di JMS e di EJB 4 Una idea interessante proposta nella versione 2.0 di Enterprise JavaBeans Permettere ad un EJB di poter ricevere messaggi JMS, in una qualche maniera Due strade non da seguire: poter definire un oggetto Java (non EJB) da inserire nel container per poter consumare messaggi complesso, nessun servizio offerto dal container, non riusabile aggiungere ai due tipi di EJB esistenti (session e entity) la possibilità di poter consumare messaggi se un messaggio arriva mentre arriva una invocazione di un suo metodo, cosa succede? i EJB non sono multi-thread!

5 La soluzione: i Message-Driven EJB (MDB) I Message Driven Enterprise JavaBeans sono la soluzione al problema: sono dei EJB a tutti gli effetti potendo quindi godere di tutti i servizi forniti dal container ma sono dei consumatori di messaggi i client possono esclusivamente inviare messaggi e quindi non ci sono interfacce da definire di alcun tipo 5

6 Buone notizie (per il programmatore!) Non si sono interfacce da definire per i MDB C è solamente un solo metodo da implementare che è lo stesso della interface MessageListener cioè onmessage() Non ci sono valori da restituire né eccezioni da lanciare Non c è stato da mantenere (gli MDB sono stateless) 6

7 I vincoli da seguire per un MDB 7 Deve implementare le interfacce MessageDrivenBean e MessageListener La classe deve essere pubblica (non astratta o final) Deve implementare un metodo ejbcreate() e un metodo ejbremove() pubblici, non static/final, senza argomenti o eccezioni della applicazione Deve contenere un costruttore pubblico senza argomenti errore sul listato del libro: manca il costruttore di LogBean Non deve definire metodo finalize

8 I vincoli da seguire per onmessage onmessage() Il metodo deve essere pubblico (e non dichiarato final e static) Il tipo di ritorno deve essere void Un singolo argomento di tipo javax.jms.message Non deve lanciare eccezioni specifiche della applicazione (ma solo eventualmente quelle EJB) Non deve gestire le transazioni di per sé: ma questo viene fatto settando il parametro corretto nel descriptor file 8

9 Organizzazione della lezione I Message Driven Bean (MDB) Esempio di un MDB Deployment ed esecuzione 9

10 Programma LogBean.java import javax.jms.*; import javax.ejb.*; import javax.jms.*; public class LogBean implements MessageDrivenBean,MessageListener{ protected MessageDrivenContext ctx; public LogBean() {} public void ejbremove() throws EJBException { System.err.println("ejbRemove()"); } public void ejbcreate() throws EJBException { System.err.println("ejbCreate()"); } // continua Implementa due interfacce Metodi di creazione e rimozione praticamente vuoti Attenzione: sono metodi necessari sul libro manca ejbcreate()

11 Programma LogBean.java public void setmessagedrivencontext( MessageDrivenContext ctx) throws EJBException { this.ctx = ctx; } public void onmessage(message msg) { if (msg instanceof TextMessage) { TextMessage tm = (TextMessage) msg; try { System.err.println ("Ricevuto: "+ tm.gettext()); } catch (JMSException e) { e.printstacktrace(); } } } } Assegnazioen contesto Unico metodo significativo: stampa su standard error (il file di log del container) il messaggio ricevuto

12 Organizzazione della lezione I Message Driven Bean (MDB) Esempio di un MDB Deployment ed esecuzione 12

13 Deployment - 1 Creiamo un nuovo EJB Message Supponiamo di avere già creato nell esempio precedente (JMS) le varie destinazioni nel container 13

14 Deployment - 2 Selezioniamo il percorso dove si trova l EJB 14

15 Deployment - 3 E scegliamone il nome: SimpleMessageBean 15

16 Deployment - 4 Editiamo i contenuti del jar 16

17 Deployment - 5 Aggiungiamo la unica classe LogBean 17

18 Deployment - 6 Aggiungiamo la unica classe LogBean 18

19 Deployment - 7 Avendo editato i contenuti andiamo avanti nel wizard 19

20 Deployment - 8 Selezioniamo la classe di bean e automaticamente il tipo viene settato e gli altri campi non sono modificabili un MDB non ha interfacce di alcuna tipologia 20

21 Deployment - 9 Si devono fornire informazioni per il collegamento ai servizi JMS forniti dal container 21

22 Deployment : si deve indicare il tipo di destinazione javax.jms.queue javax.jms.topic a seconda del dominio scelto 22

23 Deployment : si deve indicare il target della destinazione inteso come destinazione fisica come definito nella lezione precedente su JMS quindi: PhysicalQueue

24 Deployment : si deve indicare il target della destinazione inteso come destinazione fisica come definito nella lezione precedente su JMS quindi: PhysicalQueue

25 Deployment : si deve indicare il nome JNDI della connection factory usata jms.queueconne ctionfactory E poi Next 25

26 Deployment : Fine non ancora! 26

27 Deployment - 15 Resta ancora da: scegliere le modalità di transazione sui metodi del bean completare la configurazione della connessione con i servizi forniti dal container per i messaggi 27

28 Deployment - 16 Si seleziona il bean e si sceglie il tab delle transazioni 28

29 Deployment - 17 Si sceglie che le transazioni siano gestite dal container e si sceglie required per l unico metodo del bean (onmessage()) 29

30 Deployment - 18 Si va sul tab Message Destination del file jar 30

31 Deployment - 19 Si clicca su Add Si inserisce la destinazione fisica utilizzata PhysicalQueue nel nostro caso 31

32 Deployment - 20 Per la destinazione fisica PhysicalQueue si indica il JNDI name utilizzato jms/queue 32

33 Deployment - 21 Torniamo al tab General dell EJB.. e scegliamo Sun-specific Settings 33

34 Deployment - 22 Il JNDI name di un MDB è il nome JNDI della destinazione perché è così che verrà localizzato Nel nostro caso jms/queue 34

35 Deployment - 23 Effettuiamo la verifica tutto ok 35

36 Deployment - 24 Salviamo e effettuiamo il deployment 36

37 Deployment - 25 Administrator login e password Nessun client jar da restituire: è un message driven EJB 37

38 Deployment - 26 Deployment effettuato con successo 38

39 Il file ejb-jar.xml jar.xml 39

40 Esecuzione di un client JMS standard 40

41 Il file di log che mantiene System.err 41

Vittorio Scarano. Università degli Studi di Salerno. Lezione 23 Enterprise JavaBeans (8)

Vittorio Scarano. Università degli Studi di Salerno. Lezione 23 Enterprise JavaBeans (8) Lezione 23 Enterprise JavaBeans (8) Vittorio Scarano Corso di Sistemi Distribuiti (2003-2004) Laurea Specialistica in Informatica Università degli Studi di Salerno Obiettivo della lezione Presentare le

Dettagli

Obiettivo della lezione. Creare e fare il deployment di un Enterprise Javabean

Obiettivo della lezione. Creare e fare il deployment di un Enterprise Javabean Lezione 13 Enterprise JavaBeans Vittorio Scarano Corso di Sistemi Distribuiti (2003-2004) Laurea Specialistica in Informatica Università degli Studi di Salerno Obiettivo della lezione Creare e fare il

Dettagli

Connection factories e destinazioni: sono oggetti amministrati da JNDI.

Connection factories e destinazioni: sono oggetti amministrati da JNDI. 1 JMS Gli elementi fondamentali di un applicazione JMS sono: Connection factories e destinazioni: sono oggetti amministrati da JNDI. Connection Factories: sono oggetti che il client usa per creare connessioni

Dettagli

! " # $ % & % ' ( $! ) * + *, $ * " (!

!  # $ % & % ' ( $! ) * + *, $ *  (! ! " # $ % & % ' ( $! ) * + *, $ * " (! Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione Un ambiente di esecuzione che gestisce o naming di oggetti, sicurezza, concorrenza, transazioni,

Dettagli

Una breve presentazione. Basati sulla specifica EJB Sun Microsystems. Consentono di costruire applicazioni ad oggetti distribuite, utilizzando Java

Una breve presentazione. Basati sulla specifica EJB Sun Microsystems. Consentono di costruire applicazioni ad oggetti distribuite, utilizzando Java Enterprise JavaBeans Approfondimento per il corso di Sistemi Distribuiti A.A. 2002/2003 Una breve presentazione Basati sulla specifica EJB Sun Microsystems Consentono di costruire applicazioni ad oggetti

Dettagli

EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti

EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti EJB Components Leonardo Mariani Esercitazione di Sistemi Distribuiti 1 Oggetti Distribuiti 2 Middleware Esplicito 3 Middleware Implicito 4 Component-based system CONTAINER cart ejb/cart ejb/account ejb/catalog

Dettagli

ottobre Fonti The Java EE 5 Tutorial The Java Message Service API Luca Cabibbo Messaging

ottobre Fonti The Java EE 5 Tutorial The Java Message Service API   Luca Cabibbo Messaging Luca Cabibbo Architetture Software Dispensa MW 4 ottobre 2008 1 -Fonti The Java EE 5 Tutorial The Java Message Service API http://java.sun.com/javaee/5/docs/tutorial/doc/ 2 Obiettivi - Obiettivi e argomenti

Dettagli

Obiettivo della lezione

Obiettivo della lezione Obiettivo della lezione Lezione 18 Enterprise JavaBeans (6) Vittorio Scarano Corso di Sistemi Distribuiti (2003-2004) Laurea Specialistica in Informatica Università degli Studi di Salerno Dopo aver visto

Dettagli

Enterprise Java Beans (EJB) SAPIENZA Università di Roma Corso di Architetture Software Orientate ai Servizi

Enterprise Java Beans (EJB) SAPIENZA Università di Roma Corso di Architetture Software Orientate ai Servizi Enterprise Java Beans (EJB) SAPIENZA Università di Roma Corso di Architetture Software Orientate ai Servizi Enterprise Java Beans Gli Enterprise Java Beans (EJB) sono componenti scritti in Java che realizzano

Dettagli

Obiettivo della lezione. Presentare un esempio di meccanismi di comunicazione asincrona utilizzato nei Message- Oriented-Middleware (MOM)

Obiettivo della lezione. Presentare un esempio di meccanismi di comunicazione asincrona utilizzato nei Message- Oriented-Middleware (MOM) Obiettivo della lezione Lezione 20 Java Message Service Vittorio Scarano Corso di Sistemi Distribuiti (2003-2004) Laurea Specialistica in Informatica Università degli Studi di Salerno Presentare un esempio

Dettagli

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 19 - Eccezioni Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso

Dettagli

ottobre Fonti Java Platform, Enterprise Edition The Java EE 5 Tutorial [SAP/2e] Chapter 16, J2EE/EJB Luca Cabibbo

ottobre Fonti Java Platform, Enterprise Edition  The Java EE 5 Tutorial [SAP/2e] Chapter 16, J2EE/EJB Luca Cabibbo Luca Cabibbo Architetture Software Dispensa MW 5 ottobre 2008 1 -Fonti Java Platform, Enterprise Edition http://java.sun.com/javaee/ The Java EE 5 Tutorial http://java.sun.com/javaee/5/docs/tutorial/doc/

Dettagli

Inizializzare oggetti

Inizializzare oggetti Inizializzare oggetti Uso della Classe Software per TLC - AA 2008/2009 1 Costruttori e polimorfismo Uso della Classe Un codice migliore Software per TLC - AA 2008/2009 2 Costruttori ed Ereditarietà Output:

Dettagli

EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti

EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti EJB Components Leonardo Mariani Esercitazione di Sistemi Distribuiti 1 Oggetti Distribuiti 2 Middleware Esplicito 3 Middleware Implicito 4 Tipica Applicazione J2EE 1/2 5 Tipica Applicazione J2EE 2/2 6

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

1 EJB e Portal Component Object http://desvino.altervista.org

1 EJB e Portal Component Object http://desvino.altervista.org 1 EJB e Portal Component Object http://desvino.altervista.org In questo tutorial studiamo come sfruttare la tecnologia EJB, Enterprise JavaBean, all interno del SAP Netweaver Portal. In breve, EJB è un

Dettagli

Obiettivo della lezione

Obiettivo della lezione Obiettivo della lezione Lezione 17 Enterprise JavaBeans (5) Vittorio Scarano Corso di Sistemi Distribuiti (2003-2004) Laurea Specialistica in Informatica Università degli Studi di Salerno Comprendere quanto

Dettagli

Corso di Reti di Calcolatori L-A

Corso di Reti di Calcolatori L-A Università degli Studi di Bologna Facoltà di Ingegneria Corso di Reti di Calcolatori L-A Esercitazione 0 (svolta) Multithreading in Java Luca Foschini Anno accademico 2009/2010 Esercitazione 0 1 Modello

Dettagli

Enterprise Java Bean (EJB)

Enterprise Java Bean (EJB) Luca Cabibbo Architettura dei Sistemi Software Enterprise Java Bean (EJB) dispensa asw850 marzo 2017 Coming together is beginning. Keeping together is progress. Working together is success. Henry Ford

Dettagli

Componenti (middleware)

Componenti (middleware) Luca Cabibbo Architetture Software Componenti (middleware) Dispensa ASW 850 ottobre 2014 Le interfacce dei componenti devono essere progettate in modo che ciascun componente possa essere implementato in

Dettagli

INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE

INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE 00-PRIME PAGINE 2-07-2003 10:04 Pagina V Indice Prefazione XI PARTE PRIMA INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE 1 Capitolo 1 Le ragioni di tanto interesse 3 1.1 Enterprise in J2EE 3 Definizione

Dettagli

Rinaldo Bonazzo Rinaldo Bonazzo, japs incontra Spring Cagliari, 14 Giugno 2008

Rinaldo Bonazzo   Rinaldo Bonazzo, japs incontra Spring Cagliari, 14 Giugno 2008 LjAPS incontra Spring o Rinaldo Bonazzo http://www.jroller.com/rbonazzo/ 1 Chi sono Responsabile informatico di Sardinia Point Srl (www.sardiniapoint.it) società che: sviluppa strumenti informatici destinati

Dettagli

GESTIONE DEGLI ERRORI

GESTIONE DEGLI ERRORI GESTIONE DEGLI ERRORI Spesso vi sono istruzioni critiche, che in certi casi possono produrre errori L approccio classico consiste nell inserire controlli (if else..) per cercare di intercettare a priori

Dettagli

GESTIONE DEGLI ERRORI

GESTIONE DEGLI ERRORI GESTIONE DEGLI ERRORI Spesso vi sono istruzioni critiche, che in certi casi possono produrre errori L approccio classico consiste nell inserire controlli (if else..) per cercare di intercettare a priori

Dettagli

Il pattern FACTORY è un pattern di tipo Creazionale secondo la classificazione della GoF I pattern di tipo creazionali si occupano della costruzione

Il pattern FACTORY è un pattern di tipo Creazionale secondo la classificazione della GoF I pattern di tipo creazionali si occupano della costruzione Il pattern Factory Il pattern FACTORY è un pattern di tipo Creazionale secondo la classificazione della GoF I pattern di tipo creazionali si occupano della costruzione degli oggetti e delle problematiche

Dettagli

ENTERPRISE JAVABEANS

ENTERPRISE JAVABEANS ENTERPRISE JAVABEANS Approfondimento per il corso Sistemi Distribuiti A.A. 2002/2003 Marchiori Ilaria 780070 Università Ca Foscari Venezia CENNI SULLA PROGRAMMAZIONE A COMPONENTI 3 Introduzione 3 Che cos

Dettagli

NON ABBIAMO ANCORA CORRETTO LE PROVETTE!!!

NON ABBIAMO ANCORA CORRETTO LE PROVETTE!!! NON ABBIAMO ANCORA CORRETTO LE PROVETTE!!! OO in Java: classi astratte, interfacce, classi interne Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/

Dettagli

Riassunto: cos è la OOP? classi astratte, interfacce, classi interne. Scaletta. Figura con area()? Figura senza area()? Stefano Mizzaro 1.

Riassunto: cos è la OOP? classi astratte, interfacce, classi interne. Scaletta. Figura con area()? Figura senza area()? Stefano Mizzaro 1. OO in Java: classi astratte, interfacce, classi interne Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione,

Dettagli

Stateless Session Bean

Stateless Session Bean Stateless Session Bean 1 Esempio Stateless Session bean per il calcolo della somma di due numeri reali 2 Struttura del sistema calcolo della somma di due numeri reali Sum implementato con uno stateless

Dettagli

Università di Bologna CdS Laurea Magistrale in Ingegneria Informatica I Ciclo - A.A. 2014/ Modelli a Componenti e Enterprise Java Beans (base)

Università di Bologna CdS Laurea Magistrale in Ingegneria Informatica I Ciclo - A.A. 2014/ Modelli a Componenti e Enterprise Java Beans (base) Modelli a Componenti e Enterprise Java Beans Università di Bologna CdS Laurea Magistrale in Ingegneria Informatica I Ciclo - A.A. 2014/2015 02 Modelli a Componenti e Enterprise Java Beans (base) Docente:

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 Programma del Corso 09/01 Introduzione 10/01 Java Servlets 16-17/01 JavaServer Pages (JSP) 23-24/01 Lab: Applicazione AffableBean

Dettagli

Obiettivo della lezione. Introdurre gli entity beans e le caratteristiche che offrono al programmatore

Obiettivo della lezione. Introdurre gli entity beans e le caratteristiche che offrono al programmatore Obiettivo della lezione Lezione 16 Enterprise JavaBeans (4) Vittorio Scarano Corso di Sistemi Distribuiti (2003-2004) Laurea Specialistica in Informatica Università degli Studi di Salerno Introdurre gli

Dettagli

JAVA - I/O System. Il JAVA considera tutte i flussi da e verso l esterno, come stream di byte. Questi possono essere di ingresso o di uscita:

JAVA - I/O System. Il JAVA considera tutte i flussi da e verso l esterno, come stream di byte. Questi possono essere di ingresso o di uscita: JAVA - I/O System Il JAVA considera tutte i flussi da e verso l esterno, come stream di byte. Questi possono essere di ingresso o di uscita: 1. InputStream: Flusso di byte in ingresso. Con questa classe

Dettagli

Università Ca Foscari DAIS. Programmazione ad Oggetti. Esame del modulo 1

Università Ca Foscari DAIS. Programmazione ad Oggetti. Esame del modulo 1 Università Ca Foscari DAIS Programmazione ad Oggetti Esame del modulo 1 Nome: Matricola: Samuel Rota Bulò, a.a. 2012/2013 Programmazione ad Oggetti a.a. 2012/2013 Esame del modulo 1 Nome: Samuel Rota Bulò

Dettagli

Stateless Session Bean

Stateless Session Bean Esempio Stateless Session Bean Stateless Session bean per il calcolo della somma di due numeri reali 1 2 Struttura del sistema Creazione progetto calcolo della somma di due numeri reali Sum implementato

Dettagli

Introduzione alle JSP

Introduzione alle JSP Introduzione alle JSP Corso di Sistemi Web e Basi Dati Prof. Antonio d Acierno Java Server Page JSP Riferimenti http://java.sun.com/products/jsp http://www.coreservlets.com http://www.html.it/jsp Le JSPs

Dettagli

Modelli a Componenti e Enterprise Java Beans

Modelli a Componenti e Enterprise Java Beans Modelli a Componenti e Enterprise Java Beans Università di Bologna CdS Laurea Magistrale in Ingegneria Informatica I Ciclo - A.A. 2010/2011 02 Modelli a Componenti e Enterprise Java Beans (base) Docente:

Dettagli

Lezione 5 Namespace e JavaDoc

Lezione 5 Namespace e JavaDoc Lezione 5 Namespace e JavaDoc Vittorio Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Organizzazione della lezione Il namespace di Java: i package

Dettagli

18 - Classi parzialmente definite: Classi Astratte e Interfacce

18 - Classi parzialmente definite: Classi Astratte e Interfacce 18 - Classi parzialmente definite: Classi Astratte e Interfacce Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/

Dettagli

17 - Classi parzialmente definite: Classi Astratte e Interfacce

17 - Classi parzialmente definite: Classi Astratte e Interfacce 17 - Classi parzialmente definite: Classi Astratte e Interfacce Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/

Dettagli

Esercizi su Java RMI. Progetto di Cliente / Servitore e supporto. Possibile tabella mantenuta dal server

Esercizi su Java RMI. Progetto di Cliente / Servitore e supporto. Possibile tabella mantenuta dal server Esercizi su Java RMI Progetto di Cliente / Servitore e supporto Un progetto RMI si deve basare sempre sulla interfaccia remota e sulle classi del cliente e del servitore più su alcune classi di supporto

Dettagli

Obiettivo della lezione. Introdurre il modello a componenti distribuiti, presentando Enterprise JavaBeans di Sun

Obiettivo della lezione. Introdurre il modello a componenti distribuiti, presentando Enterprise JavaBeans di Sun Lezione 10 Introduzione a Enterprise Javabeans Vittorio Scarano Corso di Sistemi Distribuiti (2003-2004) Laurea Specialistica in Informatica Università degli Studi di Salerno Obiettivo della lezione Introdurre

Dettagli

Gerarchia delle classi Classi astratte Interfacce (Eccezioni) Laboratorio di Programmazione - Esercitazio 1

Gerarchia delle classi Classi astratte Interfacce (Eccezioni) Laboratorio di Programmazione - Esercitazio 1 Gerarchia delle classi Classi astratte Interfacce (Eccezioni) Laboratorio di Programmazione - Esercitazio 1 Gerarchia delle classi Una sottoclasse eredita metodi, variabili, etc. dalla superclasse... Per

Dettagli

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

Basi di Dati. Prof. Alfredo Cuzzocrea Università degli Studi di Trieste. Basi di Dati e Web. Credits to: Prof. M. Di Felice UniBO Basi di Dati Prof. Alfredo Cuzzocrea Università degli Studi di Trieste Basi di Dati e Web Credits to: Prof. M. Di Felice UniBO " Molti sistemi software prevedono la presenza di un database gestito da un

Dettagli

24 - Possibili approfondimenti

24 - Possibili approfondimenti 24 - Possibili approfondimenti Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Corso di Progettazione del Software

Corso di Progettazione del Software T. Mancini & M. Scannapieco S.JOO.3 Java: le classi Object e Class February 2, 2008 p. 1/12 Università degli Studi di Roma La Sapienza Facoltà di Ingegneria Corso di Laurea in Ingegneria Gestionale Corso

Dettagli

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori A.A. 2009/2010

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori A.A. 2009/2010 Corso di Laurea in Ingegneria Informatica Corso di Reti di Calcolatori l Introduzione ai Thread in Java A.A. 2009/2010 1 Thread Un thread è un flusso sequenziale di esecuzione di istruzioni all interno

Dettagli

Programmazione a Oggetti Lezione 11. Eccezioni e Packages

Programmazione a Oggetti Lezione 11. Eccezioni e Packages Programmazione a Oggetti Lezione 11 Eccezioni e Packages Sommario Eccezioni Sollevamento Cattura Trattamento Packages e visibilità Eccezioni I programmi spesso si trovano ad operare in condizioni anomale:

Dettagli

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 7 SE PROGRAMMER

Dettagli

CloneNotSupportedException clone() Object clone() protected native Object clone() throws CloneNotSupportedException this

CloneNotSupportedException clone() Object clone() protected native Object clone() throws CloneNotSupportedException this Clonazione Importante esempio di eccezione controllata è CloneNotSupportedException che può essere lanciata dal metodo nativo clone() della classe Object. La dichiarazione di clone() è la seguente: protected

Dettagli

Organizzazione della lezione. 18. Applicazioni ed Esempi (2) II prova intercorso. Prove scritte degli esami successivi

Organizzazione della lezione. 18. Applicazioni ed Esempi (2) II prova intercorso. Prove scritte degli esami successivi Organizzazione della lezione 18. Applicazioni ed Esempi (2) Vittorio Scarano Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Organizzazione della

Dettagli

Organizzazione della II prova intercorso ed esami. L accesso al registry per il rebind() Una soluzione con registry multipli Alcuni commenti finali

Organizzazione della II prova intercorso ed esami. L accesso al registry per il rebind() Una soluzione con registry multipli Alcuni commenti finali Organizzazione della lezione 18. Applicazioni ed Esempi (2) Vittorio Scarano Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Organizzazione della

Dettagli

Spring & Mule. Andrea Bozzoni

Spring & Mule. Andrea Bozzoni Spring & Mule Andrea Bozzoni andrea.bozzoni@gmail.com 1 Contenuti 1 - Panoramica su un ESB 2 - Introduzione a Mule 3 - Integrazione tra Spring & Mule 3.1 - Spring come component Factory 3.2 - Configurare

Dettagli

Corso di Reti di Calcolatori T

Corso di Reti di Calcolatori T Università degli Studi di Bologna Scuola di Ingegneria Corso di Reti di Calcolatori T Esercitazione 7 (svolta) Java RMI e Riferimenti Remoti Un RMI Registry Remoto Luca Foschini Anno accademico 2018/2019

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica (L-Z) Corso di Laurea in Ingegneria Gestionale OOP: I/O da/su File e Java Exceptions Prof. Stefano Mariani Dott. Alket Cecaj Indice I/O da/su file: java.io e java.nio BufferedReader

Dettagli

Tipi riferimento e stringhe

Tipi riferimento e stringhe Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 8 Tipi riferimento e stringhe A. Miola Novembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Tipi riferimento e stringhe 1

Dettagli

Programmazione II. Lezione 23. Daniele Sgandurra 28/1/2011.

Programmazione II. Lezione 23. Daniele Sgandurra 28/1/2011. Programmazione II Lezione 23 Daniele Sgandurra daniele.sgandurra@iit.cnr.it 28/1/2011 1/20 Programmazione II Lezione 23 28/1/2011 Sommario 1 2/20 Programmazione II Lezione 23 28/1/2011 Parte I 3/20 Programmazione

Dettagli

Corso di PHP. Prerequisiti. 8.1 PHP e MySQL. Conoscenza MySQL Tecnica della programmazione

Corso di PHP. Prerequisiti. 8.1 PHP e MySQL. Conoscenza MySQL Tecnica della programmazione Corso di PHP 8.1 PHP e MySQL 1 Prerequisiti Conoscenza MySQL Tecnica della programmazione procedurale ad oggetti Principi di programmazione web Programmazione elementare in PHP 2 1 Introduzione In questa

Dettagli

18. Applicazioni ed Esempi (2)

18. Applicazioni ed Esempi (2) 18. Applicazioni ed Esempi (2) Vittorio Scarano Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Organizzazione della lezione Organizzazione della

Dettagli

Java Model 2, J2EE e MVC

Java Model 2, J2EE e MVC Java Model 2, J2EE e MVC Home Page del corso: http://www-db.disi.unibo.it/courses/tw/ Versione elettronica: 5.01.J2EE.pdf Versione elettronica: 5.01.J2EE-2p.pdf 1 Java Model 2 Nel progetto di applicazioni

Dettagli

Prova d Esame Compito A

Prova d Esame Compito A Domanda 1 A) Si richiede di analizzare le seguenti sezioni di codice. Il candidato indichi il risultato dell esecuzione del main. public class Father { private static int counter=0; private int code; public

Dettagli

Corso di Reti di Calcolatori L-A

Corso di Reti di Calcolatori L-A Università degli Studi di Bologna Facoltà di Ingegneria Corso di Reti di Calcolatori L-A Esercitazione 6 (svolta) Java RMI Luca Foschini Anno accademico 2010/2011 Esercitazione 6 1 Specifica: il Client

Dettagli

Enterprise Java Beans e Web Services

Enterprise Java Beans e Web Services Università degli Studi di Salerno Relazione: Enterprise Java Beans e Web Services Prof. Auletta Vincenzo Partecipanti Antonio Autorino 156/000006 Nicola Vitiello 156/000001 Pasquale Paola 156/000003 Indice

Dettagli

Corso di Reti di Calcolatori LA

Corso di Reti di Calcolatori LA Università degli Studi di Bologna Facoltà di Ingegneria Corso di Reti di Calcolatori LA RMI: callback Silvia Vecchi Anno accademico 2003/2004 RMI: Callback 1 Callback (1) Molte applicazioni richiedono

Dettagli

Strutture dati. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05

Strutture dati. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05 Strutture dati Il che cosa e il come Il che cosa ed il come Struttura dati: descrive come sono organizzati i dati e come sono realizzate le operazioni su di essi (cioe come si accede ai dati) Specifica

Dettagli

Java Message Service (JMS)

Java Message Service (JMS) Luca Cabibbo Architettura dei Sistemi Software Java Message Service (JMS) dispensa asw840 marzo 2017 I ll send an S.O.S. to the world. I hope that someone gets my message in a bottle. Yeah. The Police

Dettagli

Eccezioni. Comportamento di default (esempio) Propagazione delle eccezioni

Eccezioni. Comportamento di default (esempio) Propagazione delle eccezioni Università degli Studi di Roma La Sapienza Corso di Laurea in Ingegneria dell Informazione (sede di Latina) Corso di Laurea in Ingegneria dell Informazione (consorzio Nettuno) Eccezioni L esistenza di

Dettagli

LPR 2005/2006 Lezione 7. paradigma di interazione domanda/risposta remote procedure call RMI (Remote Method Invocation): API JAVA esercizio

LPR 2005/2006 Lezione 7. paradigma di interazione domanda/risposta remote procedure call RMI (Remote Method Invocation): API JAVA esercizio LPR 2005/2006 Lezione 7 paradigma di interazione domanda/risposta remote procedure call RMI (Remote Method Invocation): API JAVA esercizio PARADIGMA DI INTERAZIONE A DOMANDA/RISPOSTA Paradigma di interazione

Dettagli

Struttura di un applicazione Instant Developer

Struttura di un applicazione Instant Developer La creazione di un nuovo tipo di installazione avviene dall interno del manager, a partire dall installazione di default che è stata creata da In.de quando l applicazione è stata pubblicata per la prima

Dettagli

Luca Cabibbo. Persistenza di oggetti

Luca Cabibbo. Persistenza di oggetti AP Analisi S Analisi e Progettazione del Software Persistenza di oggetti aprile 2004 1 Persistenza di oggetti Motivazioni e contenuti Contesto applicazioni sviluppate mediante le moderne tecniche di OOA/OOD/OOP

Dettagli

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria CORSO DI FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Prof. Zambonelli, Ing. Cabri, Ing. Denti, Ing. Andrea Aime Zambonelli,

Dettagli

GUIDA ALLA COMPILAZIONE ONLINE DELLA PROCEDURA PER IL DOCUMENT CHECK

GUIDA ALLA COMPILAZIONE ONLINE DELLA PROCEDURA PER IL DOCUMENT CHECK GUIDA ALLA COMPILAZIONE ONLINE DELLA PROCEDURA PER IL DOCUMENT CHECK Questa procedura è stata creata per poter permettere all Ufficio Mobilità e Relazioni internazionali di verificare l idoneità dei titoli

Dettagli

La classe java.lang.object

La classe java.lang.object La classe java.lang.object In Java: Gerarchia di ereditarietà semplice Ogni classe ha una sola super-classe Se non viene definita esplicitamente una super-classe, il compilatore usa la classe predefinita

Dettagli

Configurazione di una vs. Laboratorio di sistemi interattivi. Dal modello formale all implementazione

Configurazione di una vs. Laboratorio di sistemi interattivi. Dal modello formale all implementazione Laboratorio di sistemi interattivi Lezione 10: Dal modello formale all implementazione General Course Information 1 Dal modello formale all implementazione Interprete universale del formalismo possibile

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

Polimorfismo parametrico vs polimorfismo per inclusione

Polimorfismo parametrico vs polimorfismo per inclusione Polimorfismo parametrico vs polimorfismo per inclusione Esercizio Definire il tipo di dato Stack con operazioni Push( element ) Pop() Non forzare una specifica implementazione Non forzare un tipo specifico

Dettagli

Estendere Rialto. Esercitazione Data Mining 5 Novembre

Estendere Rialto. Esercitazione Data Mining 5 Novembre Estendere Rialto Esercitazione Data Mining 5 Novembre Obiettivi Mostrare come sia possibile sviluppare i propri moduli per estendere il tool Estendere Rialto Rialto si configura come un tool di Data Mining

Dettagli

La configurazione nella modalità Bridge è possibile solo se si dispongono i seguenti requisiti:

La configurazione nella modalità Bridge è possibile solo se si dispongono i seguenti requisiti: CONFIGURAZIONE Router nella modalità Bridge La configurazione nella modalità Bridge è possibile solo se si dispongono i seguenti requisiti: 1. Il provider ADSL supporta il protocollo PPPoE LLC: ad oggi,

Dettagli

Gestione delle eccezioni in Java

Gestione delle eccezioni in Java Gestione delle eccezioni in Java Fondamenti di Informatica Ingegneria Gestionale Canale AL 1 Le eccezioni in Java Exception handling: insieme di costrutti e regole sintattiche e semantiche presenti nel

Dettagli

Obiettivo della lezione. Presentare Java 2 Enterprise Edition (J2EE) Presentare due tecnologie Java connesse ad Enterprise Java Beans

Obiettivo della lezione. Presentare Java 2 Enterprise Edition (J2EE) Presentare due tecnologie Java connesse ad Enterprise Java Beans Lezione Java RMI-IIOP IIOP Vittorio Scarano Corso di Sistemi Distribuiti (00-00) Laurea Specialistica in Informatica Università degli Studi di Salerno Obiettivo della lezione Presentare Java Enterprise

Dettagli

Concorrenza e sincronizzazione

Concorrenza e sincronizzazione Concorrenza e sincronizzazione Ingegneria del software Ing. Jody Marca jody.marca@polimi.it Cosa faremo oggi 2 Concorrenza Sincronizzazione Concorrenza 3 Nei programmi Java fino ad ora sviluppati è presente

Dettagli

Java Model 2, J2EE e MVC

Java Model 2, J2EE e MVC Java Model 2, J2EE e MVC Home Page del corso: http://www-db.disi.unibo.it/courses/tw/ Versione elettronica: 5.01.J2EE.pdf Versione elettronica: 5.01.J2EE-2p.pdf 1 Java Model 2 Nel progetto di applicazioni

Dettagli

Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC

Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC Programma didattico Sviluppare Applicazioni Distribuite in ambiente Spring MVC Programma del corso 1.Progettazione e Sviluppo Database Relazionali Questa competenza permette di Progettare e Sviluppare

Dettagli

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

Introduzione ORGANIZZAZIONE DEL LIBRO. Il libro è composto da 12 capitoli organizzati nelle tre parti seguenti: Introduzione Questo libro, espressamente rivolto ai programmatori esperti in Java, tratta gli elementi essenziali della piattaforma Java 2 Enterprise Edition (J2EE) e analizza in modo particolare le nuove

Dettagli

Corso di Applicazioni Telematiche

Corso di Applicazioni Telematiche Corso di Applicazioni Telematiche A.A. 2008-09 Lezione n.12 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Una Servlet è un componente software scritto in Java,

Dettagli

Errata Corrige di Manuale di Java 8

Errata Corrige di Manuale di Java 8 Errata Corrige di Manuale di Java 8 pag. 43 - par. 2.5.1 - primo riquadro che riporta linee di codice public class Punto { public Punto() //metodo costruttore { deve essere corretto come di seguito: public

Dettagli

Università Ca Foscari DAIS. Programmazione ad Oggetti. Esame del modulo 1

Università Ca Foscari DAIS. Programmazione ad Oggetti. Esame del modulo 1 Università Ca Foscari DAIS Programmazione ad Oggetti Esame del modulo 1 Nome: Matricola: Samuel Rota Bulò, a.a. 2012/2013 Programmazione ad Oggetti a.a. 2012/2013 Esame del modulo 1 Nome: Samuel Rota Bulò

Dettagli

Container-Managed Persistence Entity Bean

Container-Managed Persistence Entity Bean CMP Entity Bean 1 Container-Managed Persistence Entity Bean gestione item (implementato come CMP entity-bean) nota: normalmente gli Entity Bean interagiscono con i Session Bean, per semplicità in questo

Dettagli

Riuso di classi. Ereditarietà. Ereditarietà. Spesso si ha bisogno di classi simili

Riuso di classi. Ereditarietà. Ereditarietà. Spesso si ha bisogno di classi simili Riuso di classi Spesso si ha bisogno di classi simili Si vuole cioè riusare classi esistenti per implementare attributi e metodi leggermente diversi Non è pratico copiare la classe originaria e modificarne

Dettagli

PROCEDURA DI INSTALLAZIONE E ATTIVAZIONE DI DARWEB PRO versione 1.0

PROCEDURA DI INSTALLAZIONE E ATTIVAZIONE DI DARWEB PRO versione 1.0 PROCEDURA DI INSTALLAZIONE E ATTIVAZIONE DI DARWEB PRO versione 1.0 INSTALLAZIONE Per installazione seguire i passi operativi indicati all interno della confezione contenente il CD ricevuto; Le mappe che

Dettagli

Lezione 15 programmazione in Java. Nicola Drago Dipartimento di Informatica Università di Verona

Lezione 15 programmazione in Java. Nicola Drago Dipartimento di Informatica Università di Verona Lezione 15 programmazione in Java Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Anteprima Approfondimenti della programmazione OO Il modificatore abstract Le classi

Dettagli

Verso l architettura MVC-2 i JavaBeans

Verso l architettura MVC-2 i JavaBeans Verso l architettura MVC-2 i JavaBeans 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 Limiti dell approccio PROGRAMMA UNICO Il programma unico (servlet) svolge tre tipi di

Dettagli

JAVA GENERICS. Angelo Di Iorio Università di Bologna

JAVA GENERICS. Angelo Di Iorio Università di Bologna JAVA GENERICS Angelo Di Iorio Università di Bologna Tipi parametrici In diversi casi è utile definire classi che operano su tipi di dato diverso e implementano un comportamento comune e indipendente dal

Dettagli

Messaging (middleware)

Messaging (middleware) Luca Cabibbo Architetture Software Messaging (middleware) Dispensa ASW 840 ottobre 2014 Quando sei di fronte a un interfaccia particolarmente difficile, prova a cambiare la sua caratterizzazione. Eberhardt

Dettagli

semplici ogni elemento contiene un riferimento al successivo doppie ogni elemento contiene un riferimento al successivo e al precedente

semplici ogni elemento contiene un riferimento al successivo doppie ogni elemento contiene un riferimento al successivo e al precedente Liste doppie Liste: semplici ogni elemento contiene un riferimento al successivo doppie ogni elemento contiene un riferimento al successivo e al precedente Rappresentazione grafica semplice: doppia: Gli

Dettagli

Prova d Esame Compito A

Prova d Esame Compito A DOMANDA1 Si analizzi il codice seguente e si scriva l output prodotto dai metodi main public class General { protected int value; public static boolean flag = false; public General() { value = 1; public

Dettagli