レイアウト機能
view/layout/layout.htmlを作ればどのページに遷移してもレイアウトが読み込まれる。
例えばこんな感じ。
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:te="http://www.seasar.org/teeda/extension"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>Interior Coordinator Certifying Examination</title> <!-- 一瞬スタイルシートの適用されていない状態で描画されるのを回避するため。 --> <script type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="../../css/site.css" /> </head> <body> <div id="container"> <div id="header"><te:include te:src="/layout/header.html" /></div> <!-- メインコンテンツ --> <div id="body"> <te:includeChildBody /> </div> <div id="footer"><te:include te:src="/layout/footer.html" /></div> <div id="sideBar"><te:include te:src="/layout/navigation.html" /></div> </div> </body> </html>
注意すべきなのはte:srcで指定するHTMLファイルもちゃんとから書き始めてwell-formedなxmlとして書かなければだめ。
単にインクルードする場合は以下のように指定。
<te:include te:src="指定したいhtmlファイル" />
アクセス先の対応ページをインクルードしたい場合。
/view/test/test.html等にアクセスした場合test.htmlの
<te:includeChildBody />
因みにドキュメントによると
includeページに対応するPageクラスのinitialize()が呼ばれる。
includeページに対応するPageクラスのprerender()が呼ばれる。
src属性は,DynamicPropertyで設定可能。
と、あるのでここでゴニョゴニョすればいろいろ出来る感じかな。