java - 最终网页后运行java程序

标签 java multithreading jsf

我在 JSF 上有一个应用程序,我可以在其中上传文件。非常基本。问题是,当我到达应用程序的最后一页时,有没有办法启动(或继续执行)另一个 java 程序?即:

UploadFile.xhtml -> receiveFile.java ->Thanks.xhtml(用户将关闭浏览器) -> 另一个程序对最近上传的文件进行一些处理(即使用户关闭电脑)

我想使用一个守护程序来不断检查是否有新文件到达,但我想知道是否有一种方法可以在用户关闭浏览器时继续执行操作。

谢谢。

最佳答案

当然,最好的方法是拥有 a scheduler它将每隔 x 时间间隔查找某些文件并在线程中对其执行某些操作。

建议,请确保在上下文卸载时关闭调度程序。以下是有关如何使用 SchedulerService 的示例。

你会想要做类似 context listener 的事情。

    ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
    Runnable handler = new Runnable() {
           public void run() { 
                // handle file
           }
    };
    scheduler.scheduleAtFixedRate(handler, 10, 10, SECONDS);

关于java - 最终网页后运行java程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7956209/

相关文章:

java - 哪些问题会阻止 Java 应用程序在多个平台上运行?

java - 从 Java 更新 sqlite 数据库

jsf - 使用 JSF 2.2 时在每个回发请求上重新创建 @ViewScoped bean

jsf - 如何在鼠标悬停时添加文本 p :toggleSwitch

java - Jersey 客户端 - 变量类型被忽略

java - 统计socket编程中接收到的字符数

multithreading - Dlang,Socket,聊天服务器

C++:如果发生段错误或类似的事情,有没有办法杀死单个线程但保持应用程序运行?

编译器: "error: dereferencing pointer to incomplete type" in thread application

javascript - 如何使两个 JSF selectOneMenu 相互依赖?