开发企业 Bean 或企业应用程序客户机以管理 ActivitySession

根据所提供的示例代码摘录,使用此任务编写会话 EJB 或企业应用程序客户机管理 ActivitySession 所需的代码。

关于此任务

在大多数情况下,企业 Bean 可取决于 EJB 容器,以使用 Bean 内的 ActivitySession。在这些情况下,您需要做的所有操作是在 EJB 模块部署描述符中设置相应的 ActivitySession 属性,如在关于配置 EJB 模块 ActivitySession 部署属性的主题中所述。此外,通常情况下,实质上设计企业 Bean,以便在企业 Bean 级别上处理所有 ActivitySession 管理。

然而,在一些情况中,您可能需要会话 Bean 或企业应用程序客户机直接参与 ActivitySession。那么您需要编写会话 Bean 或企业应用程序客户机管理它自己的 ActivitySession 所需的代码。

注: 使用 BMT 并且活动会话 设置为激活于的会话 Bean 可管理 ActivitySession。实体 Bean 不能管理 ActivitySession;EJB 容器总是管理实体 Bean 内的 ActivitySession。

当准备编写会话 Bean 或企业应用程序客户机管理 ActivitySession 所需的代码时,考虑关于 ActivitySession 和事务上下文的主题中描述的各点。

要编写会话 EJB 或企业应用程序客户机管理 ActivitySession 所需的代码,根据下面的示例代码摘录完成以下步骤。

过程

  1. 获取 ActivitySession 的初始上下文。
  2. 通过 URL java:comp/websphere/UserActivitySession 的 JNDI 查询技术,实现 UserActivitySession 接口。UserActivitySession 接口用于开始和结束 ActivitySession,并查询与线程所关联活动 ActivitySession 的各种属性。
  3. 设置超时(以秒计),在此超时后,ActivitySession 服务自动完成任何后继启动的 ActivitySession。如果会话 Bean 或企业应用程序客户机未明确设置此值,那么使用缺省超时(300 秒)。

    可在管理控制台的 server-> 活动会话服务面板上,覆盖每个应用程序服务器的缺省超时。

  4. 通过调用 UserActivitySession 的 beginSession() 方法启动 ActivitySession。
  5. 在 ActivitySession 中,调用业务方法以执行所需的操作。您还可调用 UserActivitySession 的其他方法,以管理 ActivitySession;例如,获取 ActivitySession 的状态,或者为 ActivitySession 中涉及的所有 ActivitySession 资源设置检查点。
  6. 通过调用 UserActivitySession 的 endSession() 方法结束 ActivitySession。

示例

下列代码摘录提供使用 UserActivitySession 接口的基本示例:
// Get initial context
  InitialContext ic = new InitialContext(); 
// Lookup UserActivitySession
  UserActivitySession uas = (UserActivitySession)ic.lookup("java:comp/websphere/UserActivitySession");

// Set the ActivitySession timeout to 60 seconds
  uas.setSessionTimeout(60);
// Start a new ActivitySession context
  uas.beginSession();
// Do some work under this context
  MyBeanA beanA.doSomething();
  ...
  MyBeanB beanB.doSomethingElse();
// End the context
  uas.endSession(EndModeCheckpoint);

指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tas_usebma
文件名:tas_usebma.html