播放框架2.5 - 与客户沟通

时间:2018-05-29 07:46:56

标签: java playframework akka playframework-2.5

我有一个Java Play Framework 2.5项目,我必须定期更新客户的注册表。我无法进行简单的SQL插入/更新,因为我要对每一行进行一些逻辑和操作。

我最终在我的网站上用JS上传了xlsx文件(异步方式),然后用Apache POI处理它。

我唯一的问题是我不知道如何通知上传文件的用户处理文件的进度。

我想简单地用百分比显示每10%的消息。

我在网上搜索过,我认为最好的方法是使用带有Akka(BroadcastHub)的websockets,但我只是在Scala中找到示例或者用于双向通信仅在收到输入时发送输出。

如果你知道一种不同的方式,欢迎你!

1 个答案:

答案 0 :(得分:0)

我建议你看一下https://github.com/playframework/play-java-websocket-example:它给出了一个websocket和一个演员互动的例子。

在您的情况下,您将创建一个管理突变的命名actor(useractor-someid)。然后控制器将引用同一个actor(或让其他actor发送到useractor-someid),以便它可以获取状态。我建议你使用JsonNode流,这样你就可以在websocket连接中发送/接收JSON。