Provider EJB remoti

Per le applicazioni che forniscono bean EJB remoto, considerare come mantenere l'accesso ai bean EJB remoti dai client locale quando si migra questa applicazione.

Le seguenti annotazioni e classi Java indicano l'uso di bean EJB remoti:

I bean EJB remoti vengono inoltre indicati dai seguenti elementi nel file ejb-jar.xml:


<session> <description>Bean di business</description> <display-name>BusinessLogic bean</display-name> <ejb-name>BusinessLogic</ejb-name> <home>com.ibm.ejbs.BusinessLogicHome</home> <remote>com.ibm.ejbs.BusinessLogic</remote> <ejb-class>com.ibm.ejbs.BusinessLogicSession</ejb-class> <session-type>Senza stato</session-type> <transaction-type>Contenitore</transaction-type> </session>

Le applicazioni che contengono questo codice forniscono i bean EJB che possono essere acceduti da remoto. Se possibile, considerare di migrare le applicazioni che accedono a questi bean nello stesso ambiente cloud. Considerare inoltre le soluzioni di connettività necessarie se questi bean saranno acceduti da applicazioni client locale.

Questa regola viene contrassegnata una volta per il progetto Eclipse o l'archivio Java.

Come risolvere

Se la propria applicazione client è in grado di accedere direttamente a questo provider EJB remoto dopo che è stato spostato, non è richiesta alcun'altra azione.

Altrimenti un'opzione consiste nello spostare l'applicazione del provider EJB nel cloud con tutte le applicazioni client che accedono ai bean EJB remoti. Analizzare le applicazioni client 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 le applicazioni del client EJB locali esistenti per l'accesso a questo provider EJB remoto. Per ulteriori informazioni sulla configurazione di una connessione sicura, consultare Configurazione di una VPN. Una volta configurato il gateway, collegare l'applicazione alla nuova destinazione utilizzando l'host cloud ed il numero di porta fornito quando si è creata la destinazione. Il seguente esempio mostra un URL remoto dell'EJB:

Quando si configura una connessione sicura per le chiamate ai bean EJB sul cloud, creare ed installare un servlet tunnelling HTTP sul server delle applicazioni cloud, 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 bean EJB viene spostato nel cloud che quando il client 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.