Slim3 はシンプルなバリデーションフレームワークを提供しています。
Controller に渡された Request の中身を検証するのに使うわけですが、これを Slim3 + GWT で開発しているときにも使いたいと思いました。厳密には、Service に渡された Map
Slim3 が提供するバリデーションフレームワークの中心的なクラス Validators は、コンストラクタで検証対象のデータを受け取ります。受け取るデータは Request のほかに、Map
public class EntryServiceImpl implements EntryService { public void createEntry(Map<String, Object> input) { // Errors インスタンスが格納されてないとダメ input.put(ControllerConstants.ERROR_KEY, new Errors()); // 検証したいデータをコンストラクタで渡す Validators v = new Validators(input); v.add("title", v.required()); if (v.validate()) { // 成功したときの処理 } } }
Validators に渡す Map
入ってなければ追加してくれればいいのに、なんて思ったのは内緒です。