4

哪个 Java Web 框架最能支持“Web UI 设计师”角色?也就是说,哪个框架允许您:

  • 在您的视图/页面上使用流行的网页设计工具(XHTML 验证器、CSS 编辑器等)
  • 无需在服务器上运行即可查看更改
  • 快速原型化不同的 UI 选项
  • 支持“开发人员”和“设计人员”(术语故意模糊)之间的(有点)清晰的分离

像许多其他人一样,我发现我的大型遗留 Struts 1.x 应用程序严重缺乏这些功能,这些应用程序使用大量 JSP 片段和包含。

我已决定将我的应用程序移植到 JSR-168/268 门户环境,但尚未决定哪些 Java Web 框架将为 portlet 提供支持。我对任何类型(基于动作、基于组件等)持开放态度,一个关键标准是它对上述角色的支持程度。

我对 Tapestry 很感兴趣,它声称它的视图是符合 XHTML 的页面(只是在它们上添加了额外的 Tapestry 特定属性以在运行时处理)。听起来它可以很好地与 Web UI 设计师的工具包配合使用。但是,我想知道这是否是现实世界中实际发生的情况,或者是否需要妥协。

当然,如果有比 Tapestry 更好的东西,我很想听听!

4

7 回答 7

10

试试检票口。它有你需要的一切。

于 2009-02-03T19:06:31.357 回答
3

您可能会考虑使用 JSP 进行 ZK:http: //zkoss.org/这都是关于快速原型设计的。很多东西都是设计的并且非常容易,但是扩展小部件很难。此外,如果您不确切知道自己在做什么,巨型网络应用程序可能会出现性能问题。

于 2009-02-03T18:38:33.893 回答
2

如果您的企业计算需求很复杂,Tapestry 有一个内置的 IoC 容器这一事实真的很有帮助。但是,如果您不熟悉这种类型的编程,这也会导致 Tapestry 的高学习曲线。将纯 HTML 页面更改为 Tapestry 页面很容易,因为 Tapestry 标记尽可能地具有非侵入性。查看Jumpstart以获取示例。

于 2009-07-22T18:41:28.337 回答
2

我认为 Spring MVC 对你来说是更好的选择。你会很熟悉它(它是动作框架),它支持你所需要的一切。

如果您想尝试 OO/组件框架,请尝试Apache Click。Click 类似于 Tapestry,但比 Tapestry 和 Wicket 容易得多。

于 2010-01-16T11:28:21.310 回答
1

我在使用 JSTL 和 CSS、Spring 和 SiteMesh 的 JSP 上非常幸运。SiteMesh 尤其棒,因为它允许您在没有包含的情况下编写页面。它使用 Decorator 和 Composite 模式获得了很好的优势。

Web 设计师使用 HTML 和 CSS 使用 Dreamweaver 创建页面。开发人员将采用这些并使用 JSTL 添加动态位。页眉、页脚和其余部分是使用 SiteMesh 添加的。关注点分离很好。

于 2009-02-03T18:07:28.373 回答
0

Stripes MVC 框架可以满足您的所有需求。这是一个易于使用的 Web 框架,并且由于它是基于操作的,因此它接近 HTTP 和生成的 HTML,因此您可以完全控制自己的 HTML。

作为视图技术,它支持Freemarker或带有自定义 Stripes JSP 标签的 JSP(没有 scriplets!)。两种解决方案都完全符合 XHTML。

Stripes 框架支持快速原型设计。编辑完视图后,不需要重新编译代码,甚至不需要重启服务器,只需重新加载页面即可。

关注点分离非常好。只是生成控制器命令它执行的操作的愚蠢视图。控制器代码也简单明了,不需要在 XML 文件中进行大量映射,所有这些都由 Java 5 @annotations 很好地默认和配置。(参见:维基百科示例代码)。

不太了解portlet,但有一个Liferay实现。

于 2010-04-03T20:50:00.010 回答
-1

我最近尝试过,我对 RichFaces 非常满意,您可以在这里查看如何呈现,并与 facelets 连接。对我有用;)

于 2009-02-03T18:57:34.917 回答