插入 Java 代码以查找 EJB 实例

使用“片段”视图来插入用于查找已定义和引用的企业 bean 实例的 Java™ 代码。

插入的 Java 代码使用 EJB 引用查找企业 bean 的远程或本地 home 接口,并调用“find”方法来查找企业 bean 的实例。

通过使用“片段”视图来快速插入此代码,可以避免手工对正确的业务逻辑进行编码以查找 bean 的实例。会生成 Java 代码并插入到正在编辑的 Java 文件的当前特别点。

插入片段以调用 EJB find 方法的示例

在插入片段之前:
public class Test {

	public void findAccountsPayableByPrimaryKey() { 		 	
		// insert snippet here
		
	}
}
在插入片段之后,添加代码以便查找 bean 和在未指定自变量的情况下调用 findByPrimaryKey 方法:
import sample.Accountspayable;
import sample.AccountspayableKey;
import com.ibm.etools.service.locator.ServiceLocatorManager;
import java.rmi.RemoteException;
import sample.AccountspayableHome;
import javax.ejb.FinderException;
public class Test {

	private final static String STATIC_AccountspayableHome_REF_NAME = "ejb/Accountspayable";
	private final static Class STATIC_AccountspayableHome_CLASS = AccountspayableHome.class;
	public void findAccountsPayableByPrimaryKey() { 		 	
		// insert snippet here
		Accountspayable anAccountspayable = find_AccountspayableHome_findByPrimaryKey(primaryKey);
	}
	protected Accountspayable find_AccountspayableHome_findByPrimaryKey(
			AccountspayableKey primaryKey) {
		AccountspayableHome anAccountspayableHome = (AccountspayableHome) ServiceLocatorManager
				.getRemoteHome(STATIC_AccountspayableHome_REF_NAME,
						STATIC_AccountspayableHome_CLASS);
		try {
			if (anAccountspayableHome != null)
				return anAccountspayableHome.findByPrimaryKey(primaryKey);
} catch (FinderException fe) {
		// TODO Auto-generated catch block
	fe.printStackTrace();
	} catch (RemoteException re) {
		// TODO Auto-generated catch block
		re.printStackTrace();
		}
		return null;
	}
}

要插入用于查找企业 bean 的实例的 Java 代码:

  1. 在 J2EE 透视图中,在编辑器中打开想要在其中查找企业 bean 的实例的 Java 文件。
  2. 将光标放置在 Java 文件中想要插入代码的位置。
  3. 在“片段”视图中,展开 EJB 抽屉并双击调用 EJB“find”方法 将打开“插入 EJB 查找”向导。
  4. 为要查找的 bean 选择 EJB 引用。如果尚未添加 EJB 引用,则在完成此向导之前,必须首先添加一个 EJB 引用。单击新建 EJB 引用以打开添加引用向导。
  5. 单击下一步
  6. 如果客户机和引用的企业 bean 不在同一个应用程序服务器容器中,您必须输入提供程序 URL名称服务类型以找到引用的企业 bean。否则,可以选择使用缺省上下文属性来查找此引用
  7. 单击下一步
  8. 选择要调用的 find 方法。
  9. 单击下一步
  10. 如果需要自变量,则在所选方法中为每个参数输入值。插入的您所输入的值会与显示的完全一样。如果想要输入字符串值,则确保包含引号。
  11. 单击完成。查找 home 接口和查找企业 Bean 的实例的 Java 代码会添加至 Java 文件。
注: serviceLocatorMgr.jar 文件作为实用程序 JAR 文件添加至您编辑的 Java 类所属的每个企业应用程序中。此 serviceLocator.jar 文件包括 Java 代码的插入片段中使用的 ServiceLocatorManager 类。此类优化 home 接口和 InitialContexts 的查找,并确保对于整个应用程序仅对它们执行一次查找。因为添加了实用程序 JAR 文件,所以会为 Java 文件所属的模块或 Java 实用程序项目添加 serviceLocator.jar 文件的 Java JAR 依赖项。

ServiceLocatorManager 类具有称为 setErrorHandler(ServiceLocatorErrorHandler handler) 的静态方法,可以使用该方法来为在查找 home 接口时出现的错误状态指定特定错误处理程序。缺省处理程序只对处理的异常调用 printStackTrace()。

相关任务
插入 Java 代码以创建 EJB 实例
插入 Java 代码以将消息发送到 JMS 队列侦听器
插入 Java 代码以调用会话 bean 方法
定义 J2EE 模块中的引用

反馈