[@ Schedule部署到JBoss时出现NullPointerException

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

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

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

@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-server-1.0- SNAPSHOT.xx-yy-server-1.0-SNAPSHOT.ClassName自动计时器?:true持久吗?:false timerService=org.jboss.as.ejb3.timerservice.TimerServiceImpl@42cdd9a initialExpiration = null intervalDuration(以毫秒为单位)= 0 nextExpiration =星期二10月15日17:21:00 CEST 2019 timerState = IN_TIMEOUT info = null]:javax.ejb.EJBException:java.lang.NullPointerException

有人知道这是什么原因吗?我对使用Java进行调度相当陌生,因此可能有些愚蠢,但是我无法在线找到任何内容。

谢谢!

java nullpointerexception jboss wildfly scheduler
1个回答
0
投票

Hello,因此,正如本Stackoverflow question所述,所有超时限制都适用,并且当您要安排多个计时器时,建议使用@Stateless EJB而不是@Singleton来推荐更多限制。

@Startup annotation通知EJB容器在启动时初始化Bean,您可能会滥用它。

© www.soinside.com 2019 - 2024. All rights reserved.