2012-04-02 65 views
2

我有开发了一个JSF Web应用程序,现在我想添加一个聊天。问题是我不知道如何做到这一点。 AJAX轮询(每20秒检查一次邮件)对我来说似乎是一个坏主意(请纠正我,如果我错了),所以我想用某种Comet(流媒体将是完美的,但我不介意如果它是长期投票)。正如你可能会怀疑的那样,所需的语言是JavaJSF聊天示例

我试过使用Grizzly,但我找不到JSF的例子,只有一些使用servlet。然后我尝试使用JMSManagedBean,但我仍然不知道如何将消息放在前端(进行实际推送)。有人建议Atmosphere,但有很多吹牛(它适合JSF),但缺乏实际的例子让我怀疑它。当然,我并没有拒绝任何这些技术,只是我不知道如何使用它们。

我不希望使用一些JSF扩展(如RichFaces,IceFaces等),因为它似乎不适用于仅用于一个功能的另一个实现。我没有时间进行大量的研究,因此查看这些框架的来源也是不可能的。

我需要什么是一个功能齐全的聊天示例(或一个伟大的工作教程),应该满足我的需求。而且这尽可能快。

奖金因为我真的需要非常快一个很好的答案,我保证会不会有一些好的信息(足以让我接受它)< = 24小时(希望少)内,当我将能够(2天内)我会给该用户一个赏金。

+0

你看过这里吗? http://stackoverflow.com/questions/5260110/implementing-chat-application-with-java-ee – 2012-04-02 15:34:24

+0

@LuiggiMendoza我没有提到它,但一切都应该在Java和/或JavaScript。不管怎么说,还是要谢谢你。 – Dragos 2012-04-02 16:46:22

+0

使用该链接我已经找到[java开源聊天服务器](http://www.java-sources.net/open-source/chat-servers)和[kryonet](http://code.google.com/p/kryonet /)一个库,用于处理网络通信(可用于聊天应用程序!你应该做更多的研究。 – 2012-04-02 16:51:21

回答

2

结账cometD。您可以在演示中找到基本的聊天实施。

投票站

  • 它非常强大(具有高性能)和简单易用
  • 据可查
  • 运行在任何的Servlet 2.5+兼容的容器
  • 很好地集成了最常用的Javascript框架jQuery和Dojo

CON外

  • 有没有高 - 可用性集群解决方案(但也有集群解决方案,但没有内置的状态恢复,如果一个节点崩溃)
  • 这不是完全CDI - 符合EJB。这意味着您需要使用构造函数,getter和setter来使其在Java EE 6 bean中可用。你不能注入它(这不是一个真正的限制,它只是一个estethic的)。
+0

没有JSF演示。他们没有详细说明这个框架。 – Dragos 2012-04-03 00:02:40

+0

@Dragos你是对的。但是你要找的东西和cometD中的聊天示例之间的唯一区别就是用户界面。服务器部分可以完全使用。 – perissf 2012-04-03 07:34:35