0

基本的にサーブレットにヒットするリクエストを取得するジョブをスケジュールするサービスを作成する必要があります。この投稿に基づいてサーブレット コンテキスト リスナーを使用してこれを実行しようとしましたが、Tomcat でバックグラウンド Java プログラムを実行していますが、定義された web.xml の変更により、Tomcat サーバーで 404 エラーが発生しています。これを達成する方法について他に提案はありますか?

この時点で考えているアイデアの 1 つは、実行可能なサーブレットを定義することです。

public class Service extends HttpServlet implements Runnable    {
     //Does stuff
     init()  {
         new Thread(this);
     }
}

これは合理的なアプローチですか?

4

1 に答える 1

0

ジョブにクォーツスケジューラを使用することを検討できます:

http://quartz-scheduler.org/

たとえば(タスクに固有のものではありません):

import java.util.Map;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

public class SchedulerJob implements Job
{
  public void execute(JobExecutionContext context)
  throws JobExecutionException {

    Map dataMap = context.getJobDetail().getJobDataMap();
    SchedulerTask task = (SchedulerTask)dataMap.get("schedulerTask");
    task.printSchedulerMessage();
  }
}

別のオプション (迅速な回避策) は、OS に応じて cron ジョブまたは Windows タスク マネージャーを使用することです。

于 2012-07-24T01:02:30.460 に答える