seasar

SAStrutsでglobal-exceptionを使うときは

RuntimeExceptionを継承したクラスをthrowしないとだめみたいですね。[Seasar-user:17015]ML検索すると大体答えがあるseasar素敵。

Java屋のためのPHP5フレームワーク Teeple2

http://code.google.com/p/teeple2/ teeple2は「Java屋のためのPHP5フレームワーク」をコンセプトににseasar2ファミリーのteedaやSAStrutsのエッセンスを取り込んだ、PHP5のWebアプリケーションフレームワークです。 以下のような特徴を持っています。 * 学…

Seasar Conferenceメモ

GWTのセッション(ひがさん) GWTではサービスごとにServletが必要だが、slim3ではGWTServiceServletのみ登録しておけばよく、各サービスはPOJO(?)で作ればよい。 GWTの開発の流れは、?モジュールを作る、?エントリーポイントを作る、?HTMLを用意する HostedMo…

Seasar Conference Spring 2009 メモ

Slim3 on Google App Engine/Java http://event.seasarfoundation.org/sc2009spring/Session#hall1 GAE/Jは老害へのリトマス試験紙(^^;) Less is more. 「ちょっとWebアプリを作りたいだけなんだ」にフォーカス。 TDD support. サーブレットをエミュレートし…

slim3やSAStrutsとVelocityを組み合わせて使うときに便利なマクロ集

input normal <input type="text" name="hoge1" value="$!form.bean.hoge1" /> ↓ <input type="text" name="#i('hoge1')" /> こう書くためのマクロ。 ## input normal #macro (i $name) #set($__form = '') #set($__form = $context.get($form.name)) #set($__value = '') #set($__value = $__form.get($name)) ${name}" value="$!__va…

Pageクラス(teeda)やActionクラス(sastruts)に自動的にTxがかかっていることの注意点

例えば利用履歴を検索する画面など、selectしか発生しないような画面でもTransactionがかかっているので、DBでは共有ロックが取得されることがある。(例えばSQLServerとか)これが原因で更新系のトランザクションがブロッキングされる事象がおきました。今回…

S2Vali-0.6.0 リリースしました!

http://code.google.com/p/s2vali/ Google Code にホスティングしてみました。もう少し機能を追加しようかなあとも思ったが、ひとまずリリースしました。 MVCフレームワークで用意されているValidatorで手の届かない部分などで活用してもらえると有用なんで…

JavaBeansをAOPで作成したい

s2valiを実践投入して試している中で1つ新しいニーズが出てきました。 commons-validator の validateメソッドには JavaBeansを渡すのですが、s2valiのメソッドとしては以下のようにチェックしたい値をパラメータに渡す形もサポートしたい。 // JavaBeansを…

S2Valiを作りながら提供側に必要な技術を学ぶ(4)

最近はもっぱら、Validatorのテストケースを書いています。Validatorはstruts-1.2.9とSAStrutsから移植してきたものですが、念のためテスト書いてます。すでに自分の案件に投入もしているのでほぼ問題なく動きそうです。 その中で1つ発見した commons-valid…

S2Valiを作りながら提供側に必要な技術を学ぶ(3)

なかなか時間が取れないものですね。実装は最低限使える部分までは終わったのですがブログの更新が滞ってました。 ResourceBundle 前回はValidatorResourcesをコンポーネントに保有させるところまで行きました。 今日はResourceBundleです。 commons-validat…

S2Valiを作りながら提供側に必要な技術を学ぶ(2)

毎朝2時間は仕事に直接関係ないことをやろうと決め、その枠組みでS2Valiを進めてます。(これも仕事に使うといえば使うのですが。。)S2Valiでは s2vali-rules.xml (Struts等でおなじみのcommons-validatorの定義ファイル) を読込んでValidationを実行します。…

S2Vali を作りながら、提供側に必要な技術を学ぶ(1)

S2Validator なるものを作ってみよう! - ワインと将棋とインターネット で書いたような仕様で S2Validator(改めS2Vali) を作り始めました。 S2Valiでは使い手に、 public interface CsvValidator { public String[] validateSomething(SomethingDto dto); }…

本番環境と開発環境で別の値を使用したい設定値の持ち方

方法はいろいろあると思いますが、最近お気に入りなのはdiconファイルに持ってしまう方法。 diconファイルは サフィックスをつけることで env.txtに書いた環境にあわせて自動的に読込むファイルが変わるので便利です。例えば、・本番環境用 appConfig_webRel…

S2Validator なるものを作ってみよう!

Teeda,SAStruts,Cubbyなどはそれぞれ独自の入力値検証機能を持っていますが、例えば アップロードしたCSVファイルの入力値検証 S2Axis2等で作るWebサービスAPIの入力値検証 バッチ処理プログラムの入力値検証 など、MVCフレームワークの入力値検証が使えない…

Seasarプロダクトの選択のしかた

半年来続けていた決済系システムの作り替え案件が一段落しそう。 この案件では様々なSeasarプロダクトを使用したのでどうしてのような選択になったのかを中心にまとめてみたい。 端末サーバー TCPの独自プロトコルで接続を受け付けるDaemonプログラム。1電文…

Teedaのforeachで、DBから取得した値を加工して表示するTips

Teeda案件が2並行で走っていた(いる)のでだいぶ細かいノウハウがたまってきた。 teedaのoutputTextはプロパティがなくてもgetterだけあればよいようなので、これを有効活用できる。例えばDBからListで取得した値をforeachで一覧に表示する場面で、status と…

teeda-ajax-demo が見つからない

いろいろ探したんですが teeda-ajax-demo が見つかりません。どこにあるんでしょう???

いや〜S2DAOいいわ〜

と今頃いってみる。使ってみて改めてわかるこの良さ。 SQL文とインターフェースだけで複雑な処理も出来てしまうお手軽さはぴかいちです。TestCase書いているときに、Test終わったら自動でロールバックさせたいな〜と思っていたら、なんとTestCaseの名称を〜T…