用于Java Web应用程序的可嵌入消息传递组件

时间:2009-06-25 14:44:25

标签: java email messaging wicket

为了满足客户的要求,我们需要让用户互相交换信息。 “消息传递系统”没有复杂的后端要求,可以使用几个表轻松实现,以存储消息和消息类型。

问题在于我认为对前端的要求非常高,可用性非常重要。此外,我希望从长远来看,这种通信的一部分将成为系统的重要组成部分。

有什么东西可以直接集成到Java Web应用程序中并适应应用程序的设计吗?我们需要的是以下界面

从服务层:

  • 向用户发送消息(标题,主题)
  • 回复消息
  • 关于用户收件箱中新邮件的通知(如果可能:在当前页面上)
  • 现有用户管理界面

优选地,组件应该已经具有具有以下功能的前端:

  • 消息管理(选择,删除,回复,删除/恢复,...)
  • 文件夹:收件箱,已发送,垃圾箱
  • 标记:消息类别
  • 在面板/ div中显示最后的 x 消息
  • 样式看起来像应用程序

如果有一些相当稳定的东西,我宁愿在实现这样的东西之前使用一个组件进入应用程序。该应用程序在Wicket上运行,但我们并不依赖于此消息传递组件的框架。

谢谢你, Kariem


在门户网站服务器中,您可以灵活地添加可以执行类似于我正在寻找的组件的portlet;例如Liferay提供mailmessage boards portlet。

正如 akf 在评论中指出Jabber为消息传递提供了坚实的基础。我们正在寻找可以集成到Web应用程序中的东西。如果我们必须围绕Jabber构建大量UI,我们无法真正认为它非常适合我们的要求。

4 个答案:

答案 0 :(得分:1)

如果您正在寻找opensource java电子邮件客户端:

http://java-source.net/open-source/mail-clients

您可能还想查看 Google Wave 。有了这个,您将拥有下一代通信和协作工具。请在www.youtube.com

上查看一些关于google wave的精彩视频

http://code.google.com/apis/wave/

http://code.google.com/p/wave-protocol/wiki/Installation

更新的解决方案......基于网络的电子邮件客户端

http://java-source.net/open-source/web-mail

http://code.google.com/p/cubusmail/

http://www.zimbra.com/downloads/os-downloads.html

答案 1 :(得分:1)

好吧,这可能有点令人惊讶但是试试Google Wave呢? 如果我查看您的标准:

  

有什么可以直接的   集成到Java Web应用程序中   并适应了应用程序   设计[...]

正如您将在这个迷你教程中发现的那样:http://blog.zenika.com/index.php?post/2010/01/27/Google-Wave-Embedded-API-the-missing-tutorial(它有多有趣?)

  

从服务层:

     
      
  • 向用户发送消息(标题,主题)
  •   
  • 回复消息
  •   
  • 关于用户收件箱中新邮件的通知(如果可能:在当前页面上)
  •   
  • 现有用户管理界面
  •   

除了最后一点之外的所有内容都是由Google Wave实例提供的。最后一点可能有点难以解决,因为您需要所有用户都拥有googlewave帐户。管理这些帐户may become available through Google Apps,但这不可行。如果它是绝对强制性的,你可以计划拥有自己的实例,因为它是open protocol,但你的目标是为你做一些事情,对吗?

  

优选地,该组分应该   已经有一个前端了   以下功能:

     
      
  • 消息管理(选择,删除,回复,删除/恢复,...)
  •   
  • 文件夹:收件箱,已发送,垃圾箱
  •   
  • 标记:消息类别
  •   
  • 在面板/ div中显示最后x条消息
  •   
  • 样式看起来像应用程序
  •   

很好,所有这一切都适用于Wave。

  

如果有合理的话   稳定,我宁愿用一个   实施前的组件   像这样的事情   应用。该应用程序运行   Wicket,但我们并不依赖于此   消息传递组件的框架。

好的Wicket很时髦,你应该喜欢这个解决方案:-) 我承认这有点'avant-gardiste',我自己从未做过这样的事情,但认为它可以拓宽你对你问题的看法......

答案 2 :(得分:0)

我认为基于网络的IM客户端SparkWeb在您的方案中非常有用。

答案 3 :(得分:0)

建议使用XMPP协议进行消息传递,因为您可以轻松地将服务器与其他聊天服务器联合,例如GTalk和Jabber。

如果您打算将消息传递服务器嵌入到您的应用程序中,Tigase是一个快速可靠的Java XMPP服务器,由于其轻量级且没有第三方依赖性,因此可以轻松集成。它几乎可以无缝扩展到数十万用户。

对于客户端,您可以使用许多可用的基于Web的XMPP客户端,例如emite,这是一个基于GWT的Web客户端,既漂亮又AJAX。