1

我们正在将我们的代码从 WAS 8 迁移到 Liberty。在 WAS 8 中,我们有一个配置,可以将更新的策略以 1 小时的间隔在 3 到 8 之间放置到消息队列中。我们试图在 Liberty 中模仿相同的配置。任何人都可以帮助我们如何配置它

4

1 回答 1

0

EJB Persistent Timers 在 Liberty 中可用,但 Scheduler 不可用。

EJB Persistent Timers 有很多配置选项,包括您是否希望 Liberty 自动创建将需要的表(这需要数据库用户有权这样做)或是否要手动创建,其中案例 Liberty 可以为您生成 DDL。您可以在此知识中心文档中找到很多高级细节。

但是,接受所有默认值的最简单的解决方案是启用 ejbPersistentTimer 功能并配置 DefaultDataSource,除非您另外配置,否则 EJB Persistent Timers 将自动使用该功能。

使用 Derby 的示例 server.xml 片段:

<server>
  <featureManager>
    <feature>ejbPersistentTimer-3.2</feature>
    ... your other features
  </featureManager>

  <dataSource id="DefaultDataSource">
    <containerAuthData user="user1" password="pwd1"/>
    <jdbcDriver libraryRef="DerbyLib"/>
    <properties.derby.embedded createDatabase="create" databaseName="timerdb"/>
  </dataSource>
  <library id="DerbyLib">
    <fileset dir="C:/Drivers/derby" includes="derby.jar"/>
  </library>
</server>
于 2018-08-07T14:26:32.777 回答