繁体   English   中英

使用 @Schedule 部署到 JBoss 时出现 NullPointerException

[英]NullPointerException when deploying to JBoss with @Schedule

我正在使用 wildfly maven 插件将我的 Java 应用程序部署到本地 jboss 服务器。

我创建了一个带有@Schedule注释的 class,如下所示:

@Startup
@Singleton
@Slf4j
public class ClassName {

  @Schedule(hour = "*", minute = "*", second = "*/20", persistent = false)
  public void method() {
    // Code
    log.info("some log");
  }
}

现在,部署时出现以下错误:

错误 [org.jboss.as.ejb3.timer](EJB 默认值 - 1)WFLYEJB0020:为计时器调用超时时出错:[id=879a76e7-b06d-458c-a722-70d8f1d40bc2 timedObjectId=xx-yy-server1.x-yy-server-1 xx-yy-server-1.0-SNAPSHOT.ClassName auto-timer?:true persistent?:false timerService=org.jboss.as.ejb3.timerservice.TimerServiceImpl@42cdd9a initialExpiration=null intervalDuration(in milli sec)=0 nextExpiration=Tue 2019 年 10 月 15 日 17:21:00 CEST timerState=IN_TIMEOUT info=null]: javax.ejb.EJBException: java.lang.NullPointerException

有谁知道是什么原因造成的? 我对在 Java 中进行调度比较陌生,所以这可能很愚蠢,但我在网上找不到任何东西。

谢谢!

Hello ,因为这个 Stackoverflow 问题提到了所有超时限制都适用,并且当您有多个将被安排的计时器时,建议使用@Stateless EJB而不是@Singleton

@Startup annotation是通知 EJB 容器在启动时初始化 bean,你可能会误用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM