Content-Typeとマークアップの出力

Tapestryはwell-formedなXMLテンプレートファイルを読み込み、XMLを出力します。 ただし、出力されるXMLにはいくつかの注意点があります。

  • XML宣言(<?xml?>)は出力されません。
  • いくつかの要素は、内容が空であっても開始タグと終了タグの対でレンダリングされます:
    • script
    • div
    • span
    • p
    • textarea
    • select
  • <![CDATA[]> セクションは 使いません

これにより、出力されるマークアップを(ほぼ)well-formedなXML文書としつつ、ブラウザには通常のHTMLとして認識させることができます。

実際には、Tapestryに純粋なXML文書をレンダリングさせることもできます; それは、レスポンスのContent-Typeによって決まります。 ページのContent-Typeはデフォルトでは "text/html" で ... この場合に上記の特別なXMLレンダリングが行われます。

ContentType アノテーションを用いてページのContent-Typeを指定することができます。 そして、"text/html" 以外のContent-Typeにすると、XML宣言を含み空の要素に対しても標準的な振る舞いをするwell-formedなXML文書としてレンダリングされます。

入出力の文字セット

出力の書き出しと入力のパースに用いられる文字セット(文字エンコーディング)は、通常 "utf-8" です。 これは、設定値 tapestry.charset によって変更できます。すべてのページが同じエンコーディングを使います。