将多个GWT应用程序集成到可插拔平台中

我想问你如何将多个基于GWT的Web应用程序组合成一个灵活的,可插拔的系统,与新的Google产品组合略有不同。 以下是详细信息/想法/要求:

  • 在屏幕的顶部应该有一个酒吧
  • 系统栏包含每个“插件应用程序”的菜单按钮。 列表应该以某种方式配置,甚至是完全动态的
  • 系统栏包含登录/注销小部件
  • 每个插件应用程序都在系统栏下面
  • 用户可以通过在系统菜单栏上选择其名称来切换应用程序
  • 插件应用程序应该在单独的Eclipse项目中,以便可以单独开发/测试它们
  • 插件应用程序将共享一些自定义小部件,因此这些小部件应保存在一个通用的Eclipse项目中
  • 如果插件应用程序可以作为服务器上的单独WAR文件部署,那么它们可以逐个升级
  • 如果系统栏自动检测到新的插件应用程序会很好

在构建GWT应用程序时是否可以使用来自不同Eclipse项目的源代码? 如果登录属于“系统栏”,那么如何保护单独的war文件? 可以以某种方式共享登录状态吗?

答案在于使用JAX-RS REST的GWT: http : //h2g2java.blessedgeek.com/2011/11/gwt-with-jax-rs-aka-rpcrest-part-0.html 。

使用JAX-B和Jackson作为对象模式的JAX-RS和RestyGWT上的REST将允许

  • RPC类固醇,
  • 混搭,多战,多服务场景。

但是,REST的缺点是您的UI不能是跨域portlet的mashup捆绑包。 有些人可能会认为这是一种优势,因为跨域必须使用安全风险的脚本包含技术。 为了克服这个问题,你可以编写一个代理servlet(又名http隧道),这是一个相当简单的事情。