在Liberty中配置调度程序或计时器服务

问题描述 投票:1回答:1

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

message-queue websphere-liberty open-liberty
1个回答
0
投票

EJB持久性计时器在Liberty中可用,而Scheduler则不可用。

EJB持久性计时器有很多配置选项,包括是否希望Liberty自动创建所需的表(这需要数据库用户有权这样做)或者是否要手动创建,其中case Liberty可以为您生成DDL。你可以在这个knowledge center document找到很多高级细节。

但是,接受所有默认值的最简单的解决方案是启用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>
© www.soinside.com 2019 - 2024. All rights reserved.