插入的 Java 代码查找 EJB 引用的远程或本地 home 接口并调用“create”方法来创建企业 bean 的实例。
通过使用“片段”视图来快速插入此代码,可以避免手工对适当的业务逻辑进行编码以创建 bean 的实例。会生成 Java 代码并插入到正在编辑的 Java 文件的当前特别点。
插入片段以调用 EJB create 方法的示例
public class Test { public void createMyBean() { // insert snippet here } }
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() { // insert snippet here 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 Auto-generated catch block ce.printStackTrace(); } catch (RemoteException re) { // TODO Auto-generated catch block re.printStackTrace(); } return null; } }
要插入用于创建企业 bean 的实例的 Java 代码:
ServiceLocatorManager 类具有称为 setErrorHandler(ServiceLocatorErrorHandler handler) 的静态方法,可以使用该方法来为在查找 home 接口时出现的错误状态指定特定错误处理程序。缺省处理程序只对处理的异常调用 printStackTrace()。