FormPopulationFilterのもっとも基本的(多分)な使い方

%core.config_dir%/global_filters.xml

<?xml version="1.0" encoding="UTF-8"?>
<configurations xmlns="http://agavi.org/agavi/1.0/config">
  <configuration>
    <filters>
      <filter name="FormPopulationFilter" class="AgaviFormPopulationFilter">
        <parameter name="methods">
          <parameter>write</parameter>
        </parameter>
        <parameter name="error_messages">
          <parameter name="./${htmlnsPrefix}div[@class=&quot;errors&quot;]">
            <parameter name="location">replace</parameter>
            <parameter name="container"><![CDATA[<ul>${errorMessages}</ul>]]></parameter>
            <parameter name="markup"><![CDATA[<li>${errorMessage}</li>]]></parameter>
          </parameter>
        </parameter>
      </filter>
    </filters>
  </configuration>
</configurations>

HTML(たとえばログインフォーム)

<form action="." method="post">
  <div class="errors" style="display:none;"></div>
  <table>
    <tr>
      <td><label for="mail_addr">メールアドレス</label></td>
      <td><input type="text" name="mail_addr" /></td>
    </tr>
    <tr>
      <td><label for="password">パスワード</label></td>
      <td><input type="password" name="password" /></td>
    </tr>
  </table>
  <p>
    <input type="submit" value="ログイン" />
  </p>
</form>
<div class="errors" style="display:none;"></div>

の部分が、

<ul>
  <li>エラーメッセージ</li>
  <li>エラーメッセージ</li>
  <li>...</li>
</ul>

といった感じに、エラーメッセージに置換されます(※書く場所はForm要素以下ならどこでも可)。さらに、エラーが起きた要素(inputとか)には class="error" が付加されます。


もうちょっと詳しい情報は、以下よりどうぞ。

http://d.hatena.ne.jp/MugeSo/20080429/1209460228

http://d.hatena.ne.jp/MugeSo/20080530/1212163904