La transformación de UML en EJB transforma una clase con el estereotipo <<Service>> en un bean de sesión sin estado o con estado gestionado por el contenedor con el mismo nombre de bean que el nombre de la clase UML de origen. La transformación siempre genera las siguientes clases Java para beans de sesión:
La transformación genera las siguientes clases de Java si, en la pestaña Sesión, pulsa Sólo interfaces remotas:
La transformación genera las siguientes clases de Java si, en la pestaña Sesión, pulsa Sólo interfaces locales:
La transformación genera las siguientes clases Java si, en la pestaña Sesión, pulsa Interfaces locales y remotas:
La transformación genera todas las clases de la carpeta de paquetes que se genera para el paquete principal de la clase UML de origen. Si crea un modelo UML sin paquetes, la transformación crea un paquete por omisión denominado ejbs.
La transformación genera el archivo de clase de bean en el árbol de origen del proyecto EJB de destino.
La transformación genera los cuatro archivos de interfaz en el árbol del origen del proyecto de cliente del proyecto EJB de destino. Si no existe ningún proyecto de cliente, la transformación genera los archivos de interfaz en el proyecto EJB de destino.
La transformación añade datos que definen el bean de sesión al descriptor de despliegue (ejb-jar.xml).
Cada clase UML con un estereotipo <<Service>> tiene una propiedad de estereotipo denominada "hasState". Cuando el valor de hasState es false, la transformación genera la clase UML como un bean de sesión sin estado. En cambio, cuando el valor de hasState es true, la transformación genera el bean de sesión con estado de UML.
Nota: La propiedad de estereotipo sólo afecta a las clases UML que genera la transformación como nuevos beans de sesión.
Por omisión, la propiedad hasState tiene un valor de false, coherente con los valores por omisión en el asistente de creación del bean de sesión.
Si la clase UML de origen para el bean de sesión tiene una relación de generalización (como una relación de ampliación) con otra clase UML con el estereotipo <<Service>>, y el estereotipo tiene el mismo valor de propiedad "hasState", el bean de sesión que representa la clase pasa a ser la superclase EJB para que se genere el bean de sesión.
Si la clase UML de origen para el bean de sesión tiene relaciones de realización (como relaciones de implementaciones) con elementos de interfaz, las interfaces a las que representan las interfaces de origen son implementadas por las cuatro interfaces (remotas, de inicio, locales, de inicio local).
La transformación transforma los atributos de la clase UML de origen en propiedades Java de la clase de bean. Para obtener más información acerca de de cómo transformar atributos, consulte la documentación relacionada con la transformación de UML en Java.
Si el tipo de atributo es de otro enterprise bean, la transformación EJB no generará un campo y una asociación para el bean de sesión. En su lugar, la transformación escribe un mensaje en el archivo de registro que enuncia que el atributo de origen no se transformará.
La transformación transforma las operaciones de la clase UML de origen en métodos empresariales del bean de sesión. Inicialmente, la operación se transforma del mismo modo que una operación en una clase UML no marcada. La operación transformada se añade a las clases que se listan en la siguiente tabla, con algunas modificaciones.
Clase |
Modificaciones de método |
Clase de bean |
Sin cambio |
Interfaz local |
Método de interfaz |
Interfaz remota |
Método de interfaz, emite java.rmi.RemoteException |
Omitidas.
Omitidas.
Condiciones
de uso |
Información
de retorno
(C) Copyright IBM Corporation 2004. Reservados todos los derechos.