[Seasar-user:7714] Re: [Teeda] システム全体で特定文字の入力を禁止する方法について

Shinpei Ohtani [E-MAIL ADDRESS DELETED]
2007年 5月 19日 (土) 23:40:40 JST


大谷です。

いくつか方法があると思いますが、
簡単なのはAOPを使う方法です。

ValidatorにInterceptorを仕掛けて、Validatorの直前に
共通半角カナチェックを行うようにします。

設定はcustomizer.diconに以下のような感じで
設定してみてください。

 <component name="yourCustomizer"
class="org.seasar.framework.container.customizer.AspectCustomizer">
  <property name="interceptorName">"app_aop.ValidatorInterceptor"</property>
  <property name="pointcut">"validate"</property>
 </component>

 <component name="validatorCustomizer"
class="org.seasar.framework.container.customizer.CustomizerChain">
  <initMethod name="addCustomizer">
    <arg>yourCustomizer</arg>
  </initMethod>
 </component>


この方法だとValidatorがかかっている項目に限ってしまうと
思いますが、実際の業務画面で入力項目には何らかのValidatorが
かかるだろうという前提です。

よろしくお願いします。

07/05/19 に Satoshi Takei<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 武居です。
>
> システム全体で共通に半角カナ等の入力を禁止し、
> 禁止された文字を入力した場合には、入力エラーを表示したいと思います。
> @RegularExpressionアノテーションで実現できると思いますが、
> すべての入力フィールドに、このアノテーションを記述するのは大変です。
>
> 共通の入力エラーチェックを一箇所にまとめて処理したいのですが、
> 入力チェック部をオーバーライドできるようなクラスか、または何らかの方法は
> ありますか?
> もし、無いのであれば、禁止文字チェック用のvalidatorを自作するのが、
> 一番簡単でしょうか?
>
> 以上、よろしくお願いします。
>
> --
> 武居聡([E-MAIL ADDRESS DELETED])
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


-- 
=============================
Shinpei Ohtani
[E-MAIL ADDRESS DELETED]
=============================



Seasar-user メーリングリストの案内