Quartz 未运行的 Spring 任务

发布于 2024-08-28 15:50:20 字数 1339 浏览 7 评论 0原文

我正在使用 QuartzJobBean 来在我的 Spring Web 应用程序中运行任务,

我的 xml 中包含:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
    <bean id="siteMapGeneratorJob" class="org.springframework.scheduling.quartz.JobDetailBean">
        <property name="jobClass" value="com.job.SiteMapJob" />
        <!--<property name="jobDataAsMap"></property>-->
    </bean>
    <bean id="simpleSiteMapTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
        <property name="jobDetail" ref="siteMapGeneratorJob"/>
        <property name="startDelay" value="10000"/>
        <property name="repeatInterval" value="30000"/>
    </bean>
</beans>

我的 bean 类:

package com.job;

import org.quartz.JobExecutionContext;

import org.springframework.scheduling.quartz.QuartzJobBean;

public class SiteMapJob extends QuartzJobBean {
    public SiteMapJob() {
    }

    protected void executeInternal(JobExecutionContext jobExecutionContext) {
        System.out.println("This is my scheduled Task!!!");
    }
}

在 Web 控制台中看不到 system.out

设置完这些内容后,我 通过 JDeveloper 在 OC4J 上本地运行

I'm using the QuartzJobBean in order to run a task in my spring web application

my xml which is being included:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
    <bean id="siteMapGeneratorJob" class="org.springframework.scheduling.quartz.JobDetailBean">
        <property name="jobClass" value="com.job.SiteMapJob" />
        <!--<property name="jobDataAsMap"></property>-->
    </bean>
    <bean id="simpleSiteMapTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
        <property name="jobDetail" ref="siteMapGeneratorJob"/>
        <property name="startDelay" value="10000"/>
        <property name="repeatInterval" value="30000"/>
    </bean>
</beans>

my bean class:

package com.job;

import org.quartz.JobExecutionContext;

import org.springframework.scheduling.quartz.QuartzJobBean;

public class SiteMapJob extends QuartzJobBean {
    public SiteMapJob() {
    }

    protected void executeInternal(JobExecutionContext jobExecutionContext) {
        System.out.println("This is my scheduled Task!!!");
    }
}

After setting this stuff up, I'm not seeing the system.out in my web console

I'm running this locally on OC4J through JDeveloper

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

墨小墨 2024-09-04 15:50:20

我忘记了以下条目:

<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
        <list>
            <ref bean="simpleSiteMapTrigger"/>
        </list>
    </property>
</bean>

I forgot the following entry:

<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
        <list>
            <ref bean="simpleSiteMapTrigger"/>
        </list>
    </property>
</bean>
风流物 2024-09-04 15:50:20

我运行你的代码,它被触发了,所以问题出在其他地方。

你的项目中有quartz-all-xxxjar吗?您是否在 appContext.xml 中执行所有这些操作?

I run your code and it got triggered, so problem is somewhere else.

Do you have quartz-all-x.x.x.jar in your project? And are you doing all this in appContext.xml?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文