哪种Java Web框架最适合Web设计人员?

时间:2009-02-03 18:02:29

标签: java web-frameworks tapestry

哪个Java Web框架最能支持“Web UI设计器”角色?也就是说,哪个框架可以让你:

  • 在您的观看次数/网页上使用流行的网页设计工具(XHTML验证器,CSS编辑器和等)
  • 查看更改而不在服务器上运行
  • 快速构建不同的UI选项原型
  • 支持“开发人员”和“设计师”之间(有点)清晰的分离(术语故意含糊不清)

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

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

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

当然,如果有比Tapestry更好的东西,我很乐意听到它!

7 个答案:

答案 0 :(得分:11)

试试Wicket。它拥有您所需要的一切。

答案 1 :(得分:3)

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

答案 2 :(得分:2)

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

答案 3 :(得分:2)

我认为Spring MVC是您的最佳选择。 它将为您所熟悉(它是行动框架),它支持您所需要的一切。

如果您想尝试OO /组件框架,请尝试Apache Click。 Click就像Tapestry一样,但比Tapestry和Wicket更容易。

答案 4 :(得分:1)

我使用JSTL和CSS,Spring和SiteMesh运气很好。特别是SiteMesh非常棒,因为它允许您编写没有包含的页面。它使用Decorator和Composite模式很有利。

Web设计人员使用HTML和CSS使用Dreamweaver创建页面。开发人员会使用JSTL来获取这些并添加动态位。使用SiteMesh添加页眉,页脚和其他内容。关注点分离很好。

答案 5 :(得分:0)

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

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

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

关注点分离非常好。只是愚蠢的视图,生成控制器命令它做的事情。控制器代码也简单明了,不需要在XML文件中进行广泛的映射,所有这些都是极好的默认和可由Java 5 @annotations配置的。 (见:Wikipedia example code)。

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

答案 6 :(得分:-1)

我最近尝试了,我对RichFaces非常满意,你可以看看礼物here,  与小面孔相连。对我有用;)