您可以使用「片段」視圖插入 Java™ 程式碼,建立您已經定義好的 Enterprise Bean 實例。
插入的 Java 程式碼會查閱 EJB 參照的遠端或本端 Home 介面, 並且呼叫 "create" 方法,建立一個 Enterprise Bean 實例。
您可以使用「片段」視圖,快速插入這個程式碼, 這樣就不必以手動方式編寫適當的商業邏輯,來建立 Bean 實例。Java 程式碼產生之後,會插到您正在編輯的 Java 檔的現行作用點。
呼叫 EJB create 方法的片段插入範例
public class Test { public void createMyBean() { // 將片段插在這裡 } }
import com.ibm.etools.service.locator.ServiceLocatorManager; import java.rmi.RemoteException; import sample.RegistrationFacadeHome; import sample.RegistrationFacadeRemote; import javax.ejb.CreateException; public class Test { private final static String STATIC_RegistrationFacadeHome_REF_NAME = "ejb/RegistrationFacade"; private final static Class STATIC_RegistrationFacadeHome_CLASS = RegistrationFacadeHome.class; public void createMyBean() { // 將片段插在這裡 RegistrationFacadeRemote aRegistrationFacadeRemote = createRegistrationFacadeRemote(); } protected RegistrationFacadeRemote createRegistrationFacadeRemote() { RegistrationFacadeHome aRegistrationFacadeHome = (RegistrationFacadeHome) ServiceLocatorManager .getRemoteHome(STATIC_RegistrationFacadeHome_REF_NAME, STATIC_RegistrationFacadeHome_CLASS); try { if (aRegistrationFacadeHome != null) return aRegistrationFacadeHome.create(); } catch (CreateException ce) { // TODO 自動產生的 catch 區塊 ce.printStackTrace(); } catch (RemoteException re) { // TODO 自動產生的 catch 區塊 re.printStackTrace(); } return null; } }
如果要插入 Java 程式碼,來建立 Enterprise Bean 實例,請執行下列動作:
ServiceLocatorManager 類別有一個 static 方法叫做 setErrorHandler(ServiceLocatorErrorHandler handler), 可以指定特定的錯誤處理常式,來處理查閱 Home 介面時所發生的錯誤狀況。預設的處理常式只要針對所處理的異常狀況呼叫 printStackTrace() 即可。