2011/03/21

Struts Validator - validwhen の条件式

Struts Validator の条件式の文法は制限がきついようである。
Apache のサンプルには次のようなものがある。(赤字は強調のため追加した。)

<field property="emailAddress" depends="validwhen">
      <arg0 key="userinfo.emailAddress.label"/>
        <var>
          <var-name>test</var-name>
          <var-value>
            ((sendNewsletter == null) or (*this* != null))
          </var-value>
        </var>
      </field>

一方書式には "All comparisons must be enclosed in parens." と書いてある。
各条件式にそれぞれカッコが必要である。
自分の書きたい式は条件1つだったので、サンプルの式を修正して次のようにした。

((*this* != null))

外側のカッコを付けたままにしたが、これは文法エラーになる。

正解は以下である。

(*this* != null)

余分なカッコを付けてはいけないらしい。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。