如何在JEE6中实现server-sent-events

时间:2012-01-22 00:53:51

标签: events java-ee-6

在PHP中它非常简单: 我刚把它添加到“b.php”:

header('Content-Type: text/event-stream');
echo "data: Hi\n\n";
flush();

这是“a.html”:

var source = new EventSource("b.php");
source.onmessage = function (event) {
document.body.innerHTML += event.data + "<br>";

我只需要去a.html它就可以了!

但在java中我试图创建servlet,在doGet中我添加了这段代码:

response.setContentType("text/event-stream");

PrintWriter out = response.getWriter();  
out.println("data: Hi\n\n") ;
out.flush();

当我转到a.html(与上面相同)时,我可以看到确实调用了doGet(在调试器中)但是“onmessage”事件从未发生过。

如何在JEE6中使用SSE?有人可以给我写一个有效的例子吗?

感谢。

1 个答案:

答案 0 :(得分:1)

结帐https://github.com/oliverwehrens/Server-Sent-Events-Java-Magazin。这是一个让你前进的示例代码。