Seasar

サンプルをいっぱい書くぞ!

いつぞやの私のコードを Teeda の Example に入れてもらったおかげで、うちの会社と取引のある同業社内での私の株が上がりました。私もすっかり忘れていたので誰にも告知していなかったんですが、その会社内で Teeda を案件に使えるか調査しているときに私の…

S2Directory の罠

Typo org.seasar.directory.dao.DirecotryDaoMetaData

S2Directory の SMART Deploy について

下の記事で上手く行かないと悶絶しましたが、原因がわかりました。それはパッケージ名です。 × com.example.directorydao ○ com.example.directoryDaoドキュメントでは directorydao だったのに…… orz

S2Directory を早速試す

↓を参考にしましたが SMART Deploy が上手く行かず orz S2Directory - SMART Deploy ぬぅ。ほとんど設定をコピペしてるんだけどなぁ。DirectoryDao が登録されない……。 現場100回じゃ〜!! もう一度見直しっ!!

Rails には ActiveRecord っぽい ActiveLDAP ってのがあるけど

S2Dao っぽい LDAP アクセスツールがあったら需要があるかな?

本当は Seasar の講習会をやりたかった(笑)

本日、山形県内の某所で、Ruby on Rails のハンズオン講習会の講師をやります。この講習会は二回目です。 でも私は、言うほど Ruby on Rails って好きじゃないんです(笑) たぶん外国産だから(笑) Ruby 自体は好き(笑) 正直、やるんだったら Seasar の…

Dolteng の scaffold は「足場」というより「お手本」

Dolteng の scaffold 機能を使ってみたのですが、Rails の scaffold よりは使いにくい印象を受けました。 恐らくは HTML と Page クラスが(Rails にくらべて)煩雑だというのと、生成されるファイルが思ったより多いからでしょう。 これは足場というよりも…

Rails や S2* を使うのは「スウィート」だから

Java の Web アプリケーションフレームワークである「Click」はよくできていると思いますし、私はけっこう好きです。でも、その割には使う気になりません。それは、O/Rマッパや DI コンテナが別だからです。Click には Hibernate や Cayenne、Spring と連携…

見てみたいサンプル

Web アプリケーションフレームワークのサンプルはどれも似たり寄ったりで、それでこそ比較もできるというものですが、毎回毎回「なんでコレがないんだよ!」と思うものがあります。それは アカウント登録のサンプル(ログイン名の二重チェックをどうすれば良…

リビジョン番号が44にもなるのはもはや異常なのではないか?

気づけば S2Dao のバージョンが 1.0.44 になっています。これはいかがなものなのでしょうか? つまり、1.0.0 がリリースされてから 44 回もリリースされているということですよね? なぜこのようなことが起こるのでしょうか? バグが報告されれば即座に対応…

「逃げ」ができないフレームワークはダメ?

最近、Teeda にときめかない。なんというかそこはかとない「不自由感」を感じる。 思ったように動かないというか、思考の速度で開発できないとうか。 「ノウハウが身につくまでとりあえずこれで逃げておくか」的なことがしにくいからだろうか? その点、Clic…

Dolteng の新しいのが出てた。

Web ページ上でのアナウンスはなし。ML ではあり。Vine Linux が非難されてた頃を思い出した。

すっかり浦島太郎

何かとせわしない状況が続いていたため、Seasar界隈が疎遠になっていたのですが、最近少しずつでも舞い戻ろうとしています。 それで、ブランクを埋めるためにいろいろ見てるのですが、すっかり Uuji の話が見えなくなってますね。最新の Dolteng を入れて、…

Teeda で作ったものをメンテナンスしていて思ったこと

どの要素が動的に書き換わるかわからぬ(^^; idのつけ方を工夫しないとだめだと思いました。

体系化された知識を持たない私には理解不能

私は試してみて、そして身体で覚えるタイプなので、たまに理解できないものが現れる。今悩んでいるのは Teeda Extension での開発において action はいるのか。 私は page に全部書いているので使ってない。 service はどういうときに使うのか。何に使うのか…

Teeda Extension の「view」は冗長だと思う。

Teeda Extension で開発した Web アプリケーションは、URL に view がつきます。たとえば↓こんな感じになります。 http://www.example.com/hoge/view/fuga/foobar.html個人的には冗長だと思います。HTML って view 以外ありえないと思うので、view は必要な…

ユニークチェックはどこですればいいのだろう?

たとえば、ユーザアカウントを登録するような Web アプリケーションを Teeda で作るとします。ユーザアカウントですから、ユーザ名は重複してはいけません。そのため DB にはユニークインデックスを張ってあるとします。 さて、このユーザ名のユニークチェッ…

S2Dao + S2JUnit4 の罠

ひさびさの罠シリーズ(?)です。S2JUnit4 の説明によりますと フィールドの変数定義がインターフェース型でそのインタフェースをもつコンポーネントがコンテナに存在する場合、そのコンポーネントがフィールドにセットされる。 とありますが、これが S2Dao…

Page クラスはどうやってテストするのだろうか?

Teeda の Page クラスは POJO なのでテストしやすい。しかしながら、バリデータやコンバータがちゃんと設定されているかをテストするにはどうしたらいいのだろう?

CAPTCHA に挑戦してみた

故あって CAPTCHA に挑戦してみました。CAPTCHA とは何かということははてなキーワードに任せるとして、私は JCAPTCHA を使って実装してみました。しかし Google 等で検索してみて見つかるサンプルで生成される画像は人間すら読むのが困難なものばかり。それ…

span 地獄、div 地獄

実は、私は Teeda Extension に似た文法を持つテンプレートライブラリを Ruby で書いたことがあります。でも、お蔵になりました。理由は、span や div が大量に出てくるからです。Pure HTML にこだわりすぎるあまり、深く使うにつれ HTML として不自然極まり…

S2Container の罠

S2Container 2.4.6 での話。Hot Deploy では、jar に固めたものも DI の対象になるが、Cool Deploy ではならない。

Teeda Extension で作るのに一瞬「難しいかも」と思った Web アプリケーション

リンク集 Java の Web アプリケーションフレームワークって意外と簡単そうなものが難しかったりするんですよね。S2JSF に出会うまでは、JSF で普通の掲示板作るのすら手間取ったっけなぁ。

今日の Teeda の罠

↓こんなふうにテンプレートに書いたのです。 ほげほげ<strong>ふがふが</strong>&lt;br /&gt; ↓実行したらこうなりました。 ほげほげ<strong>ふがふが</strong><br /> ↓回避(?)策 ほげほげ<strong>ふがふが</strong>&amp;lt;br /&amp;gt;

またヌルポ

S2DXO で、プロパティをコピーしようと思ったら、java.sql.Timestamp 型で null 値を持つプロパティのコピーでヌルポ。う〜む。

Teeda の TLongRangeValidator は、なぜこんなことをするのだろうか?

Teeda Extension に入っている TLongRangeValidator は、エラーメッセージを出すときに何故か minimum と maximum を String に変換します。どうやら convert プロパティを false にすることでこれは回避できるみたいなんですが、アノテーションでこれは指定…

Teeda Tiger この命名方法はいいのか?

Hot deploy でさくさく開発させていただいて、ああ、こりゃいいわ〜と浸っていた今日この頃なのですが、Cool deploy に切り替えたらうごかねぇぇぇぇぇ!! と取り乱してしまいました。 Google先生に聞いてみると、Hot と Cool で S2Container に自動登録さ…

Teeda 1.0.2 が出たわけですが

tiger の話。Converter のアノテーションが BigDecimalConverter と DateTimeConverter しかありません。S2Dao の timestamp を使った排他制御を使いたいので TimestampConverter が使いたいんですけど、ドキュメントも見つからず半ばあきらめ気味です。とい…

プリミティブ型配列を渡すと怪しいような……

まだ確証がとれてないので ML 等に報告できないのですが、Seasar 2.4.4 で推奨されるパッケージの構成で開発していて思ったことです。引数の型がプリミティブ型の配列の場合、TraceInterceptor の 76 行目のキャストで ClassCastException が出るような気が…

Dolteng のバカー(T-T)

昨日の日記の NullPointerException を出なくする方法がわかりました。というか、なぜ出ていたのかがわかりました。 それは作り方が悪かったのです。それは当然といえば当然ですが、そう「作る手順」が悪かったのですね。これは Dolteng で Chura プロジェク…