【问题标题】:Web Application using OSGi and GWT使用 OSGi 和 GWT 的 Web 应用程序
【发布时间】:2011-02-03 18:11:19
【问题描述】:

对于使用 OSGI 和 GWT 作为 UI 的 Web 应用程序来说,哪种架构比较好?

目的是使用捆绑包来制作 Web 界面部分的捆绑包。如果我添加新包,它将在用户界面上添加新功能(例如菜单),与现有功能配合。

【问题讨论】:

  • 这是一个有趣的想法。我想看看这是否可以完成,因为您必须运行 GWT 编译器才能将其转换为 JS/HTML 格式。每次添加/删除模块时都必须运行编译器吗?
  • 我不会每次添加模块时都运行编译器。
  • 那么您将如何提供页面?我的印象是,你需要运行编译器才能让它输出 HTML/JS,所以只要你的代码库发生变化,你就会再次运行它。
  • 我没有一个单独的 GWT 模块,而是有许多交互的模块。想象一下有一个带有菜单的基本应用程序。默认实现什么也不做。如果我安装了一个包含 GWT 模块的新包,该模块具有应用程序的新功能(例如客户管理),该模块将在菜单中自动可见,单击相应的菜单项将打开一个窗口,其中包含在包中定义的接口.

标签: web-applications gwt osgi


【解决方案1】:

请参阅 GWT 邮件列表上的类似讨论 - http://groups.google.com/group/google-web-toolkit/msg/4a3f912cb89a7256

总结一下—— GWT 的体系结构与您在运行时加载多个模块的要求是正交的。在 GWT 中有多种方法可以实现动态模块,但永远不会是最优的。

一般来说,您会为每个模块定义一个 javascript 接口,然后使用 GWT Exporter 从 GWT 导出这些方法。然后,您将独立编译每个模块。然后,这些模块将在运行时使用您导出的 javascript 方法进行交互。

您付出的代价是性能。每个模块都会重复通用的框架代码(GWT + 你自己的框架代码),没有什么可以避免的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    • 2013-05-07
    • 2011-07-31
    • 2011-02-02
    • 2013-04-14
    • 1970-01-01
    相关资源
    最近更新 更多