私は少しここに私のコメントを拡張します。 JSFは通常のWebフレームワークではありません。コンポーネントベースのWebフレームワークです。 GWT、Vaadin、Echoなどがそうです。彼らはXHTML strictを生成しなければ簡単に回避できません。一方、Spring-MVC、Struts、Grailsなどのフレームワークは、アクションベースのWebフレームワークです。(もちろん、JSFのComponent/Rendererも変更できます)
一方、Spring-MVC、Struts、Grailsなどのフレームワークは、アクションベースのWebフレームワークです。彼らは内在的な部品としてコンポーネントを持っていません。はい、彼らは便利なタグライブラリを提供しますが、厳密なxhtmlを生成することができなければ、それらを使わずに行くことができます。たとえば、<form:input>
を使用できますが、<input type="text" />
を使用して、適切なname
とvalue
を設定することもできます。
アクションベースのフレームワークのほとんどは、ビュー(JSP)でのフロー制御のためにJSTLに依存しています。だから、スクリプトレットはありません。しかし、JSTL自体はマークアップを表示しません。したがって、JSTL +を手書きマークアップを使用してXHTML strictを生成することができます。
使用されるタグライブラリは、別の話です。たとえば、カレンダーが必要な場合は、taglibを使用できますが、適切なxhtmlを表示しない可能性があります。しかし、あなたはjQueryのカレンダーでもあります。その違いは、アクションベースのフレームワークにとって巨大ではありません。
私は、Spring MVCとGrailsの経験があり、それらを使うことができます。生成されたマークアップをきめ細かく制御できます。
Struts 1.3.xタグはxhtmlをレンダリングすることができますが、Strictについては、各ページの定義を宣言するだけです(安全にする)。 –
まあ、JSFやGWT(と同様のもの)とは違って、コアコンポーネントからHTMLを全く生成しません。 JSPの場合、厳密なHTMLを生成することもあれば生成しないこともあるtaglibがありますが、それは特定のtaglibに依存します。 – Bozho
それを除いて、厳格に対する要件はかなり妥当なものではありません。もし彼らが望む次のものがIE6で動くようにしたらどうでしょうか? – Bozho