對於查閱或呼叫遠端 EJB Bean 的應用程式,請考量如何維持從雲端存取遠端 EJB Bean,或考量將所有相關 EJB Bean 移轉至雲端。
在 Java 程式碼中,具有使用 java:global 或 corbaname: 名稱空間的 lookup 元素的 javax.ejb.EJB 註釋,指出可能會使用遠端 EJB。如果在查閱中指定的 EJB 位於不同應用程式中,則請考量將該應用程式與此應用程式一起移轉至雲端。
@EJB(lookup="java:global/myApp/myModule/MyBeanComponent")
對於部署描述子,application.xml、ejb-jar.xml 或 web.xml 檔中具有 <home> 或 <remote> 元素的 <ejb-ref> 元素,也指出會使用遠端 EJB。
<ejb-ref> <ejb-ref-name>CartHome遠端</ejb-ref-name> <ejb-ref-type>階段作業</ejb-ref-type> <home>com.ibm.ejbs.CartHomeRemote</home> <remote>com.ibm.ejbs.CartRemote</remote> </ejb-ref>
對於每個 Eclipse 專案或 Java 保存檔,將會標示此規則一次。
如果您的應用程式可以直接存取 EJB 遠端提供者,則不需執行進一步動作。
否則,其中一個選項是在移轉此應用程式時,也將包含遠端 EJB Bean 的應用程式移至雲端。同時分析這些應用程式是否有連線功能問題。或者,您可以使用 VPN 通道(如 IBM Cloud Secure Gateway),來建立安全連線以查閱現有內部部署 EJB 遠端提供者。如需配置安全連線的相關資訊,請參閱配置 VPN。對於 EJB 查閱,請在安全用戶端中將目的地配置為內部部署 JNDI 樹狀結構。按下列其中一種格式,使用從該配置中傳回的主機及埠進行雲端安全連線:
在 InitialContext 內容或 JNDI 內容中變更提供者 URL,以使用雲端主機及埠。
在為對遠端內部部署 EJB Bean 的呼叫配置安全連線時,請在內部部署應用程式伺服器上建立及安裝 HTTP 通道作業 Servlet,並在用戶端 ORB 中啟用通道作業。如需相關資訊,請參閱 啟用 HTTP 通道作業。 將安全用戶端配置成指向 HTTP 通道作業 Servlet,然後按下列格式使用從配置中傳回的主機及埠進行雲端安全連線:
在將 EJB 用戶端移至雲端且 EJB Bean 位於內部部署中時可以使用此技術,反之亦然。
附註:使用遠端 EJB Bean 的 Liberty for Java 應用程式可以部署至 IBM Cloud 即時執行時期;但由於 IBM Cloud 環境中的埠限制,無法透過 CORBA/IIOP 通訊協定來遠端存取遠端 EJB Bean。如需 IBM Cloud 上的 Liberty for Java 相關資訊,請參閱 IBM Cloud 中支援的 Liberty 特性。