Linea guida: Progettazione di bean basati sui messaggi
Questa linea guida descrive come progettare bean basati sui messaggi per un'applicazione J2EE.
Relazioni
Elementi correlati
Descrizione principale

Introduzione

Questa linea guida si focalizza sulla progettazione di bean basati sui messaggi. Un'ulteriore guida su come identificarli e modellarli è fornita da Linea guida del prodotto di lavoro: Bean basati sui messaggi. Una guida generale sugli EJB viene fornita dalla Linea guida del prodotto di lavoro: EJB (Enterprise JavaBean)

Notare che, poiché i bean basati sui messaggi sono richiamati indirettamente mediante messaggi piuttosto che direttamente mediante operazioni di interfaccia, la progettazione comporta l'elaborazione del formato del messaggio e la descrizione del comportamento in risposta ai messaggi, ma non l'elaborazione di operazioni di interfaccia.

Transazioni

Una limitazione dell'uso della messaggistica consiste nel fatto che l'autore e l'utente di un messaggio (nel bean basato sui messaggi) non possono partecipare alla stessa transazione. L'autore può utilizzare una transazione per posizionare il messaggio nella coda e il bean basato sui messaggi può utilizzare una transazione separata per impegnare i risultati della lettura del messaggio, ma deve trattarsi sempre di transazioni separate.

I bean basati sui messaggi possono utilizzare transazioni gestite dal contenitore o dal bean. In genere, quelle gestite dal contenitore sono più semplici, perciò preferite. Per un'ulteriore guida, vedere Tecnica: Progettazione di EJB (Enterprise JavaBean).

Ordine di messaggio

Ogni bean basato sui messaggi è una classe attiva che può avere più istanze. Poiché ogni istanza di bean basato sui messaggi viene eseguita simultaneamente, l'elaborazione di un messaggio ricevuto da un'istanza può essere completato prima o dopo un messaggio elaborato da un'altra istanza.

Ne segue che i messaggi possono essere letti in un ordine diverso da quello in cui sono stati prodotti. La progettazione di bean basati sui messaggi devono prendere in considerazione questa possibilità.