是否有可以可靠地生成XHTML 1.0 Strict的Java Web框架?

时间:2010-12-07 15:37:31

标签: java xhtml xhtml-1.0-strict

我正在开始一个Java项目,客户端已经强制要求使用XHTML 1.0 Strict。基于XHTML的JSF Facelets最初似乎是一个不错的选择,但我发现它们无法生成XHTML Strict,社区认为这是a very low priority issue

是否有其他支持渲染为XHTML Strict的Java框架? JSTL标记库怎么样?

2 个答案:

答案 0 :(得分:5)

我会在这里稍微扩展我的评论。 JSF不是常规的Web框架。它是一个基于组件的Web框架。 GWT,Vaadin,Echo等也是如此。如果他们不生成XHTML严格,他们就不能轻易绕过。 (如果您愿意,可以在JSF中更改Component / Renderer)

另一方面,Spring-MVC,Struts,Grails等框架是基于动作的Web框架。它们没有组件作为内在部件。是的,他们确实提供了方便的标签库,但如果他们碰巧无法生成严格的xhtml,你可以不使用它们。例如,您可以使用<form:input>,但也可以使用<input type="text" />并设置正确的namevalue

大多数基于操作的框架依赖于JSTL在视图(JSP)中进行流控制。所以没有scriptlets。但JSTL本身不会呈现任何标记。因此,您可以使用JSTL +手写标记来生成严格的XHTML。

将使用的标记库是一个不同的故事。例如,如果您想要一个日历,您可以使用taglib,它可能无法呈现正确的xhtml。但你也可以使用jQuery日历 - 对于基于动作的框架来说差异不会很大。

也就是说,我有使用Spring-MVC和Grails的经验,你可以使用它们 - 它们允许对生成的标记进行细粒度控制。

答案 1 :(得分:1)

Spring Web MVC 2.0.x的文档表明关联的标记库生成HTML4.0.1 / XHTML1.0有效标记。这可能是一个很好的起点,因为我希望2.5也可能甚至3.0来支持这一点。

http://static.springsource.org/spring/docs/2.0.x/reference/mvc.html