Para aplicaciones que buscan o llaman a beans EJB remotos, piense en cómo mantener el acceso a los beans EJB remotos desde la nube o considere la posibilidad de migrar todos los beans EJB relacionados a la nube.
En código Java, las anotaciones javax.ejb.EJB
con un elemento lookup que utiliza el espacio de nomres
java:global o corbaname: indica que es posible utilizar
un EJB remoto. Si el EJB que se especifica en la búsqueda está en una aplicación diferente,
considerar la migración de esa aplicación a la nube con esta aplicación.
@EJB(lookup="java:global/myApp/myModule/MyBeanComponent")
Para los descriptores de despliegue, un elemento <ejb-ref>
en un archivo application.xml, ejb-jar.xml o
web.xml con un elemento <home> o <remote>
también indica el uso de un EJB remoto.
<ejb-ref> <ejb-ref-name>CartHomeRemote</ejb-ref-name> <ejb-ref-type>Sesión</ejb-ref-type> <home>com.ibm.ejbs.CartHomeRemote</home> <remote>com.ibm.ejbs.CartRemote</remote> </ejb-ref>
Esta regla se marca una vez por proyecto Eclipse o archivo Java.
Si la aplicación puede acceder directamente al proveedor remoto EJB, no es necesario realizar ninguna acción más .
De lo contrario, una opción también es mover las aplicaciones que contienen los beans EJB remotos a la nube cuando se migre esta aplicación. Analice también esas aplicaciones en busca de problemas de conectividad. También puede utilizar un túnel de red privada virtual como por ejemplo IBM Cloud Secure Gateway para crear una conexión segura para buscar el proveedor remoto EJB local existente. Para obtener más información sobre la configuración de una conexión segura, consulte Configuración de una red privada virtual. Para búsquedas de EJB, configure el destino del cliente seguro en el árbol JNDI local. Utilice el host y el puerto devueltos de esa configuración para la conexión segura en la nube con uno de los formatos siguientes:
Cambie el URL de proveedor en las propiedades de InitialContext o en las propiedades de JNDI para utilizar el host de nube y el puerto.
Al configurar una conexión segura para llamadas a beans EJB locales remotos, cree e instale un servlet de túnel HTTP en el servidor de aplicaciones local y habilite el túnel en el ORB del lado del cliente. Para obtener más información, consulte Habilitación del túnel HTTP. Configure el cliente seguro para que apunte al servlet de túnel HTTP y utilice el host y el puerto que se devuelven de la configuración para la conexión segura de nube en el formato siguiente:
Puede utilizar esta técnica cuando el cliente EJB se mueve a la nube y el bean EJB es local y viceversa.
Nota: Las aplicaciones Liberty para Java que utilizan beans EJB remotos se pueden desplegar en un IBM Cloud Instant Runtime; sin embargo, no se puede acceder de forma remota a los beans EJB remotos con el protocolo CORBA/IIOP debido a las restricciones en el entorno IBM Cloud. Para obtener más información sobre Liberty for Java on IBM Cloud, consulte Liberty features supported in IBM Cloud.