<script>
Groovy 1.8 XML MarkupBuilder を使用して、タグを含む HTML ページを作成しています。
Firefox 18 でページを読み込むと、予期した結果ではなく空白のページが表示されます。
これは、タグを保証するコンテンツがないにもかかわらず、生成された<script>
タグに補完的なタグがないことが原因のようです。(参照: https://stackoverflow.com/questions/69913/why-dont-self-closing-script-tags-work )</script>
</script>
Groovy コードのサンプル:
def builder = new groovy.xml.MarkupBuilder( out )
builder.html {
head {
script( type:'text/javascript', src:'//example.com/example.js' )
}
body {
p("Hello...Newman.")
}
}
Firefox の [View Page Source] (Ctrl-U) を使用して (空白の) レンダリングされたページの HTML を調べると、次のように表示されます。
<html>
<head>
<script type='text/javascript' src='//example.com/example.js />
</head>
<body>
<p>Hello...Newman.</p>
</body>
</html>
よく見ると、<script ... />
タグの「/」が赤くレンダリングされており、「/」にカーソルを合わせると「非 void HTML 要素で使用される自己終了構文 ("/>") が使用されている」というテキストが表示されます。無視するスラッシュを開始タグとして扱います。」
<script>
では、 Groovy XML MarkupBuilder を使用して有効な HTML タグを生成するにはどうすればよいでしょうか?