6

我正在启动一个 Java 项目,其中客户端要求使用 XHTML 1.0 Strict。基于 XHTML 的 JSF Facelets 起初似乎是一个不错的选择,但我发现它们不能用于生成 XHTML Strict,社区认为这是一个非常低优先级的问题。

是否有其他支持呈现为 XHTML Strict 的 Java 框架?JSTL 标签库呢?

4

2 回答 2

5

我会在这里稍微扩展一下我的评论。JSF 不是一个常规的 Web 框架。它是一个基于组件的网络框架。GWT、Vaadin、Echo 等也是如此。如果它们不产生严格的 XHTML,那么使用它们就无法轻松解决。(好吧,如果您愿意,您可以更改 JSF 中的组件/渲染器)

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

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

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

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

于 2010-12-07T16:39:13.780 回答
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

于 2010-12-07T15:41:46.547 回答