【问题标题】:Which serverside Java technology to use with ExtJSExtJS 使用哪种服务器端 Java 技术
【发布时间】:2009-07-10 01:23:37
【问题描述】:

我们计划将使用 Struts/JSP/EJB 编写的 6-8 岁应用程序的 UI 框架升级到 ExtJS。只是好奇人们一直在使用的服务器上最流行的 Java 技术是什么。我们正在研究几种替代方案,例如

  1. DWR
  2. 轻松休息
  3. 休息
  4. Struts-Json

我们更倾向于使用 DWR,但只是想知道编程社区是否对此有一些值得思考的地方。

出于向后兼容的原因,迁移将逐步发生,在此期间,我们将尝试使 ExtJS 与旧的 Web1.0 样式页面共存。我们不会对业务层进行任何更改,只是 Web 层将从 JSP 页面更改为 ExtJs 页面。

【问题讨论】:

    标签: java javascript extjs struts dwr


    【解决方案1】:

    如果您仍然打算使用 ExtJS,您是否考虑过使用 ExtGWT 来代替?这将为您提供很多更好的 Java 集成。

    【讨论】:

    • 但这将以失去对生成内容的控制为代价。如果您的网站不仅是 EXT,而且还有 twitter Bootstrap 前端怎么办?
    【解决方案2】:

    我的团队过去也使用过 Struts。我们已经向前迈进并正在使用 DWR,我们喜欢它。我们在 DWR 和 Ext 方面的经验非常棒。如此多的样板代码,包括 Java 端的 DWR 和 JavaScript 端的 Ext,都已减少。还有一个 ExtJsWithDwr 项目可以帮助整合两者:http://github.com/BigLep/ExtJsWithDwr

    【讨论】:

      【解决方案3】:

      ExtGWT 如果您愿意使用 GWT,或者我会推荐 Metro(或任何 Java RESTful 实现 - JSR 311)+ ExtJS,效果很好。

      【讨论】:

        【解决方案4】:

        我们一直在使用Restlet 并取得了很好的成功,它可以用于不是 100% RESTful 的应用程序(我们有些领域我们有点傲慢)。这不是一个完整的解决方案,但它与其他技术进行了不错的集成。例如,我们使用 Restlet 对 Apache FreeMarker 模板生成器的支持来生成 XHTML/CSS 页面。

        我们生成的页面使用jQuery,ExtJS 应该也能正常工作。 Restlet 也有一个GWT module

        【讨论】:

          【解决方案5】:

          还可以查看Jersey。这是一个非常有用的 JAX-RS (JSR 311) 实现,可以轻松集成到像您这样的现有项目中。

          如果我是你,我会创建一个单独的包(甚至是 EAR/WAR),其中的类只与你现有的 EJB 通信,并作为 ExtJS 可以与之通信的 REST 服务公开。

          【讨论】:

          • 我想知道,您将如何通过 Jersey 提供非 REST 内容,例如模板化的 html 和其他东西。我的意思类似于@Jim ferrans 对 RestLet 所做的事情。
          • 您可以将它与 Mustache (mustache.github.com) 等模板库一起使用
          【解决方案6】:

          我一直在使用类似的项目jabsorb,它与DWR非常相似,但符合JSON-RPC。

          【讨论】:

            【解决方案7】:

            您可能想查看 Myna (http://mynajs.org)。这是一个部署为 J2EE war 文件的服务器端 JavaScript 应用程序平台。作为服务器端 JavaScript,它与 Ext 很好地集成在一起。事实上,所有的内部管理 UI 都是用 Ext 编写的。 Myna 有几个您可能会觉得有用的功能:

            • 基于 Web 的管理员应用程序。 无需编辑 XML 文件
            • 基于 Web 的数据库管理员。能 运行查询,创建/编辑/删除表, 并生成 Myna 和 SQL 代码 图形界面
            • 集中数据源管理和 池化数据库连接
            • 支持 SOAP、XML-RPC、JSON-RPC 和带有 Ext.Direct 的 MYNA-JSON 的 Web 服务类 即将推出!
            • 支持处理 PUT、POST、GET、 和 DELETE HTTP 请求
            • 支持加载 POJO 的 您的 JavaScript 代码(通过 Rhino)
            • 运行时对象关系映射。当数据库表发生变化时,无需编辑 XML 文件或重新编译类
            • Javascript 预处理器支持 具有隐式的多行 SQL 查询 准备好的语句和类型化参数
            • 查询支持分页和返回 总行数,适用于 Ext的grids和PagingToolbar

              完全披露:我是 Myna 的主要开发者

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2013-10-16
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2017-10-16
              • 1970-01-01
              相关资源
              最近更新 更多