Classi di <<servizio>>

La trasformazione da UML a EJB trasforma una classe con lo stereotipo <<Service>> in un bean di sessione gestito dal contenitore, senza stato o con stato con un nome bean uguale al nome della classe UML di origine. La trasformazione genera sempre le seguenti classi Java per i bean di sessione:

 

La trasformazione genera le seguenti classi Java quando, nella scheda Sessione, si fa clic su Solo interfacce remote:

 

La trasformazione genera le seguenti classi Java quando, nella scheda Sessione, si fa clic su Solo interfacce locali:

 

La trasformazione genera le seguenti classi Java quando, nella scheda Sessione, si fa clic su Interfacce locali e remote:

La trasformazione genera tutte le classi nella cartella del pacchetto generata per il pacchetto principale della classe UML di origine. Se si crea un modello UML senza pacchetti, la trasformazione crea un pacchetto predefinito denominato ejbs.

La trasformazione genera il file della classe bean nella struttura ad albero del progetto EJB di destinazione.

La trasformazione genera i quattro file di interfaccia nella struttura ad albero di origine del progetto client del progetto EJB di destinazione. Se non esiste alcun progetto client, la trasformazione genera i file di interfaccia nel progetto EJB di destinazione.

La trasformazione aggiunge i dati che definiscono il bean di sessione per il descrittore di distribuzione (ejb-jar.xml).

Proprietà stereotipo - "hasState"

Ciascuna classe UML con uno stereotipo <<Service>> ha una proprietà stereotipo denominata "hasState". Quando il valore di hasState è false, la trasformazione genera detta classe UML come un bean di sessione senza stato. Quando invece il valore di hasState è true, la trasformazione genera la classe UML come un bean di sessione con stato.

Nota: La proprietà stereotipo influenza solo le classi UML che la trasformazione genera come nuovi bean di sessione.

Per impostazione predefinita, la proprietà hasState ha un valore di false, che è congruente con le impostazioni predefinite nella procedura guidata per la creazione di bean di sessione.

Relazioni di generalizzazione

Se la classe UML di origine per il bean di sessione ha una relazione di generalizzazione (come ad esempio una relazione extends) con un'altra classe UML con lo stereotipo <<Service>>, e detto stereotipo ha lo stesso valore di proprietà "hasState", il bean di sessione rappresentato dalla classe diventa la superclasse EJB per il bean di sessione da generare.

Relazioni di realizzazione

Se la classe UML di origine per il bean di sessione ha delle relazioni di realizzazione (ad esempio delle relazioni implements) con gli elementi di interfaccia, le interfacce rappresentate dalle interfacce di origine sono implementate dalle quattro interfacce (remota, home, locale, home locale).

Attributi

La trasformazione trasforma gli attributi della classe UML di origine in proprietà Java nella classe bean. Per ulteriori informazioni sulla modalità di trasformazione degli attributi, consultare la documentazione relativa alla trasformazione da UML a Java.

Se il tipo dell'attributo è di un altro bean enterprise, la trasformazione EJB non genera un campo ed un'associazione per il bean di sessione. La trasformazione scrive invece un messaggio nel file di log che indica che l'attributo di origine non verrà trasformato.

Operazioni

La trasformazione trasforma le operazioni nella classe UML di origine in metodi aziendali sul bean di sessione. Inizialmente, l'operazione viene trasformata in modo analogo ad un'operazione su una classe UML non contrassegnata. L'operazione trasformata viene aggiunta alle classi elencate nella seguente tabella, con qualche modifica.

Classe

Modifiche metodo

Classe bean

Nessuna modifica

Interfaccia locale

Metodo interfaccia

Interfaccia remota

Metodo interfaccia, genera java.rmi.RemoteException

Classi interne

Ignorato.

Interfacce interne

Ignorato.

Termini di utilizzo | Feedback
(C) Copyright IBM Corporation 2004.
Tutti i diritti riservati.