java dog 2020-12-09 11:29 采纳率: 0%
浏览 26

winchill下使用Timer的定时任务

我写了一个定时任务,然后定时任务执行时

说没有活动的方法上下文

定时任务如下




public class TestTask3 extends TimerTask {


    private static boolean isRunning = false;

    @Override
    public void run() {
        // 是否整点
        // Calendar c = Calendar.getInstance();
        // if (C_SCHEDULE_HOUR == c.get(Calendar.HOUR_OF_DAY))

        if (!isRunning) {

            isRunning = true;


            com.lcs.wc.material.LCSMaterial lcsMaterial = null;
            try {
                lcsMaterial = (com.lcs.wc.material.LCSMaterial) com.lcs.wc.foundation.LCSQuery.findObjectById("VR:com.lcs.wc.material.LCSMaterial:9252102");
            } catch (WTException e) {
                e.printStackTrace();
            }
            String name1 = lcsMaterial.getName();
            System.out.println(name1);

            isRunning = false;


        }

    }
}
public class test11 implements ServletContextListener {

    private Timer timer = null;

    @Override
    public void contextInitialized(ServletContextEvent event) {
        timer = new Timer(true);
        event.getServletContext().log("定时器已启动");
        timer.scheduleAtFixedRate(new TestTask3(), 60*1000 , 1000 * 60); // 每小时执行一次run方法    测试5秒5 * 1000
    }

    @Override
    public void contextDestroyed(ServletContextEvent event) {
        if (timer != null) {
            timer.cancel();
            event.getServletContext().log("定时器销毁");
        }
    }
}

执行Java代码是可以的,但是只要调用windchill上的方法jiu'hui'bao'cuo

  • 写回答

1条回答 默认 最新

  • 夜郎king 2022博客之星IT其它领域TOP 12 2023-05-22 08:01
    关注

    看错误是spring中bean没有进行托管管理吧,导致失败了。

    评论

报告相同问题?

悬赏问题

  • ¥30 STM32 INMP441无法读取数据
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
  • ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
  • ¥30 c#打开word开启修订并实时显示批注
  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境