23.4.2. 设置默认的 Session Bean 访问超时时间

JBoss 管理员可以指定默认的 Singleton 和 Stateful Session Bean 的超时时间。默认值可以通过管理控制台或 CLI 设置。其默认值是 5000 毫秒。

过程 23.15. 用管理控制台设置默认的 Session Bean 访问超时时间

  1. 登录到管理控制台。请参考 第 3.4.2 节 “登录到管理控制台”
  2. 点击屏幕顶部的 Configuration 标签页。展开 Connector 菜单并选择 EJB 3。然后选择 Container 标签页。
  3. 点击 编辑 按钮。Details 区域里的字段现在可以进行编辑了。
  4. Stateful Access Timeout 和/或 Singleton Access Timeout 文本框里输入所需的值。
  5. 点击Save完成。

过程 23.16. 用 CLI 设置 Session Bean 访问超时时间

  1. 登录 CLI 工具并连接到您的服务器。请参考 第 3.5.4 节 “用管理 CLI 连接受管服务器实例”
  2. 请使用 write-attribute 命令和下列语法。
    /subsystem=ejb3:write-attribute(name="BEANTYPE", value=TIME)
    • 对于 Stateful Session Bean,用 default-stateful-bean-access-timeout 替换 BEANTYPE,而对于 Singleton Session bean 则使用 default-singleton-bean-access-timeout
    • 用所需的超时值替换 TIME
  3. 使用 read-resource 操作来确认修改。
    /subsystem=ejb3:read-resource

例 23.12. 用 CLI 设置默认的 Session Bean 访问超时时间为 9000

[standalone@localhost:9999 /] /subsystem=ejb3:write-attribute(name="default-stateful-bean-access-timeout", value=9000)  
{"outcome" => "success"}
[standalone@localhost:9999 /]

例 23.13. XML 配置示例

<subsystem xmlns="urn:jboss:domain:ejb3:1.2">
   <session-bean>
      <stateless>
         <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
      </stateless>
      <stateful default-access-timeout="5000" cache-ref="simple"/>
      <singleton default-access-timeout="5000"/>
   </session-bean>
   
</subsystem>