seasar2

S2JDBCを使った再帰構造テーブルのデータを取得する

S2JDBCって再帰構造テーブルのデータを取得できるみたいでなのでやってみます。親子構造を持つデータで、「業種」なるものを例にとってまずはテーブル作成から テーブル --シーケンス作成 create sequence "category_seq" start 100; --テーブル作成 CREATE …

S2JDBCのWhere条件で「OR」を使う

S2JDBCの条件にてORを使いたい場合はComplexWhereを使うとのこと。 SimpleWhereとCOmplexWhereを絡めたパターン たとえば顧客情報テーブルというのがあって以下のような項目がある ・名前 ・名前(カナ) ・住所 ・備考 ・削除フラグんで、とりあえずキーワ…

S2jdbc-genのタスク実行時に出るエラーの解決方法

S2jdbc-genのアントタスクを実行した際に以下のようなエラーが出て、タスクが実行できないケースがあります。 (環境:SAStruts、S2JDBC、H2Database) s2jdbc-gen-build.xml:29: Exception in thread "main" java.lang.ExceptionInInitializerError at org.…

S2Dao.NETでアプリ起動後初回のデータアクセス(しかもバイナリ型)のみなんだか遅かったけど解決

データベースにて画像ファイルを突っ込んでるんだけど、アプリケーションの初回起動時に画像を表示する時だけすんごく遅いという現象が起こったんだけど、どうやらS2Dao.NETのドキュメントにその対応がありました。ちなみに今開発しているアプリのDBはPostgr…

S2Daoで複数のデータソースを使う(.Net版)

今構築しているアプリケーションで違うサーバのDBを参照する必要があるような機能があり、Dao毎に違うコネクションを使って複数DBへ接続する設定をメモしておきます。 環境 DBサーバ1:postgres 192.168.0.100 テーブル:Employee DBサーバ2:postgres 192…

diconファイルのコンポーネントタグ内でprintlnができるの知りませんでした

Seasarの調べ物しててUCHDさんのはてなのdiconファイル例を見てたらOGNLの面白い応用例があったのでメモ。こんな感じでdiconファイルに書くと、、、 <component name="hogeService" class="sample.HogeService"> <initMethod>#out.println("=====create component")</initMethod> </component>アプリ起動時にコンソールへと出てきます。 =====create componen…

S2StrutsのカスタムバリデートでFormFileの拡張子をチェック

FormFileのバリデートを作ろうと思ったんだが、実装クラスでFormFileのオブジェクトを取得するのにハマったんでメモ。 import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang.StringUtils; import org.apache.commons.validator.Fi…

S2Strutsでひらがなバリデート

ひらがなのみしか受け付けないようにしたかったんで、こんな感じでMaskのバリデートを書いてみたけどひっかかってくれなかった。 @Mask(pattern="^[\\u3040-\\u309F]+$", messageKey="error.validate.hiragana")んで次のでもダメ @Mask(pattern="[\\p{InHira…

S2Strutsでアノテーションを利用したカスタムValidationの作成

S2Strutsでアノテーションを利用したカスタムValidationの作成をするには次の手順をやっていきます。 新規Validation作成 application.propertiesに追記 validator-rules.xmlに追記 Validationアノテーションの作成 アノテーションで変数がある場合のみ次の…

S2Struts-Tigerの@NoValidate

NoValidateの動きがよく分からなかったので追ってみた。 AP起動時にAbstractValidatorAnnotationHandler#registerFieldsでStrutsのActionFormを@StrutsActionFormアノテーション属性がついているクラスから生成していて、ここで@NoValidateが付いているプロ…