Per le applicazioni che ricercano o richiamano i bean EJB remoti, considerare come gestire l'accesso ai bean EJB remoti dal cloud o considerare la migrazione di tutti i bean EJB correlati sul cloud.
Nel codice Java, le annotazioni javax.ejb.EJB con un elemento lookup che utilizzano lo spazio dei nomi java:global o corbaname: indicano che è possibile che vengano utilizzati EJB remoti. Se l'EJB specificato nella ricerca si trova in un'applicazione diversa, considerare la possibilità di migrare tale applicazione nel cloud con questa applicazione.
@EJB(lookup="java:global/myApp/myModule/MyBeanComponent")
Per i descrittori di distribuzione, un elemento <ejb-ref> in un file application.xml, ejb-jar.xml o web.xml, con un elemento <home> o <remote>, indica anche l'utilizzo di un EJB remoto.
<ejb-ref> <ejb-ref-name>CartHomeSessione</ejb-ref-name> <ejb-ref-type>remota</ejb-ref-type> <home>com.ibm.ejbs.CartHomeRemote</home> <remote>com.ibm.ejbs.CartRemote</remote> </ejb-ref>
Questa regola viene contrassegnata una volta per il progetto Eclipse o l'archivio Java.
Se la propria applicazione è in grado di accedere direttamente al provider remoto EJB, non è richiesta alcun'altra azione.
Altrimenti un'opzione consiste nello spostare le applicazioni che contengono i bean EJB remoti nel cloud quando si migra questa applicazione. Analizzare tali applicazioni anche per problemi di connettività. In alternativa, è possibile utilizzare un tunnel VPN, come ad esempio IBM Secure Gateway for IBM Cloud, per creare una connessione sicura per ricercare i provider remoti degli EJB locali esistenti. Per ulteriori informazioni sulla configurazione di una connessione sicura, consultare Configurazione di una VPN. Per le ricerche EJB, configurare la destinazione nel client sicuro nella struttura JNDI locale. Utilizzare l'host e la porta che vengono restituiti dalla configurazione per la connessione sicura al cloud in uno dei seguenti formati:
Modificare l'URL del provider nelle proprietà InitialContext o nelle proprietà JNDI per utilizzare l'host e la porta del cloud.
Quando si configura una connessione sicura per le chiamate ai bean EJB locale, creare ed installare un servlet tunnelling HTTP sul server delle applicazioni locali, ed abilitare il tunneling sull'ORB del client. Per ulteriori informazioni, consultare Enabling HTTP tunneling. Configurare il client sicuro affinché punti al servlet tunneling HTTP, ed utilizzare l'host e la porta che vengono restituiti dalla configurazione per la connessione sicura al cloud nel seguente formato:
È possibile utilizzare questa tecnica sia quando il client EJB viene spostato nel cloud che quando il bean EJB è locale, e viceversa.
Nota: Liberty per le applicazioni Java che utilizzano i bean EJB remoti può essere distribuito in un IBM Cloud Instant Runtime; tuttavia, i bean EJB remoti non sono accessibili da remoto con il protocollo CORBA/IIOP a causa delle limitazioni di porta nell'ambiente IBM Cloud. Per ulteriori informazioni su Liberty for Java on IBM Cloud, consultare Liberty features supported in IBM Cloud.