Glass Fish为各种Java EE规范捆绑了不同的参考实现,例如,CDI的Weld,JSF的Mojarra,WebSocket的Tyrus,JAX-RS的Jersey。 Glass Fish 4.0.1即将发布,并计划涵盖许多组件/模块的更新,这些组件/模块当然包括新功能和错误修复。
Glass Fish 4.0.1将支持Jersey中的“服务器发送事件”功能。 让我们尝试测试此功能:
- 从此处下载最新版本的Glass Fish
- 解压缩ZIP安装程序的内容,并在IDE中对其进行配置(我正在使用NetBeans)。
注意 :我正在使用JDK8。 请记住将Glass Fish配置为使用相同的 。
- 确保在课程路径中包括突出显示的JARS(如下)。 这些在GF_INSTALL / glassfish / modules下可用。
现在,提供泽西岛SSE功能演示的示例代码。 它相对简单。
涉及三个主要类别:
AResource.java
它充当事件流的生产者 ,并建模为JAX-RS资源,当使用GET方法调用该资源时会发出事件。 返回的事件流以org.glassfish.jersey.media.sse.EventOutput的形式抽象, 上面写入了org.glassfish.jersey.media.sse.OutboundEvent对象。 OutboundEvent由实际事件数据组成。
ATestServlet.java
此类用作由AResource.java类产生的事件的消费者 。 这是一个简单的JAX-RS客户端,它向已发布的JAX-RS资源发送GET请求,读取org.glassfish.jersey.client.ChunkedInput并进一步从org.glassfish.jersey.media.sse中提取实际事件数据。 InboundEvent实例。
RESTConfig.java
与JAX-RS通常一样,它用作引导程序类。
要测试从服务器(生产者)到客户端(消费者)的SSE功能,请部署您的应用程序,然后仅访问http:// you_gfish_ip:port / JerseySSE / SSETest上的Servlet 。 您应该看到以下日志:
关于FishCAT – 玻璃鱼社区验收测试计划 。 欢迎大家参加!
有关泽西岛和服务器发送事件的更多信息,请点击此处 。
这是一个相当快的……不错! 现在您有时间去做一些更有用的事情!
干杯!!!
翻译自: https://www.javacodegeeks.com/2014/07/jersey-sse-capability-in-glass-fish-4-0-1.html