Ingegneria del software Modulo 3 -Tecniche dimplementazione Unità didattica 2 -EJB Ernesto Damiani Università degli Studi di Milano Lezione 4 – Le transazioni
Modello delle transazioni Definisce transazioni flat (non modificate) Modellato secondo lo standard OTS (Object Transaction Service) 1.1 OMG
Java Transaction Service (JTS) La maggior parte degli Enterprise bean e dei loro client non hanno bisogno di accedere alla gestione delle transazioni del programma Comunque, per accedere si dovrebbe usare linterfaccia javax.jts.UserTransaction (definita parte dellAPI JTS) Questa API definisce tutte le interfacce Java relative alla gestione delle transazioni
Aggiornamento di più database (1) Consente ai programmi applicativi di aggiornare i dati in più database in una singola transazione
Aggiornamento di più database (2) Il client invoca lEnterprise bean X. X aggiorna i dati nei due database A e B X, poi, chiama un altro Enterprise bean Y. Y aggiorna i dati nel database C Il server EJB assicura che gli aggiornamenti ai database A, B e C siano tutti confermati o tutti annullati
Aggiornamento dei database tramite server EJB (1) Consente aggiornamenti di dati in più siti in una singola transazione
Aggiornamento dei database tramite server EJB (2) Il client invoca lEnterprise bean X. X aggiorna i dati nel database A Il client, poi, chiama un altro Enterprise bean Y che è installato in un server EJB remoto Y aggiorna i dati nel database B Quando X invoca Y, i due server EJB cooperano per diffondere il contesto transazionale da X a Y, cosa che è trasparente al codice a livello di applicazione FINE