seasar

S2Mai 0.9.7をリリースしました

久しぶりのリリースですが、バグ対応です。Hot Deploy時に、S2Containerの初期化が都度走ってしまいエラーが発生するのに対応しました。ダウンロードは以下からです。 http://s2mai.sandbox.seasar.org/

JBoss4.2.2GAでSeasar2を動かしてみる

判ってる人が誰も居ない場に放り込まれ、諸々の与件のみ伝えられたまま放置。もう右も左もなんとやらで・・・とめげていたら、こんな神資料を発見。http://www.slideshare.net/bose999/jboss-application-server-seasar2-on-seasar-conference-2009-white最…

S2VeloPoiみたいなの

を作ってみようと思ったら、なんかあっと云う間だった。VeloPoiはこちら↓から戴いてそのまんま使うとして。 http://d.hatena.ne.jp/nowokay/20050526 public class S2VeloPoiInterceptor extends AbstractInterceptor { private static final long serialVer…

Seasar Con行ってきた

どうやって帰ったか全然判らない。非道い。何時まで居たんだろう・・・。id:nowokayさんにしどろもどろではじめましてのご挨拶をした所までは覚えてる。むーん。皆さんに御迷惑おかけしてなきゃいいんですけど。あの店に、ホッピーが外と中形式で置いてあっ…

S2JDBCでOneToManyで俺の罪

コメントの続き。一対多のプロパティ、問題、私が悪うございました。joinの仕方でポカやりました。 List<Hoge> hogeList = jdbcManager .from(Hoge.class) .join("hogeDetail",JoinType.INNER) .getResultList();って書いてました・・・。で、hogeDetailなんてプロ</hoge>…

引き続きS2JDBC

一対多のプロパティ、ドキュメントには public class Department { ... @OneToMany(mappedBy = "department") public List<Employee> employeeList; }って書いてあるんだけど、 public class Department { ... @OneToMany(mappedBy = "department") public List<Employee> employ</employee></employee>…

idとかnameとか続き(S2JDBC編)

S2JDBCで遊ぶ。自分自身をサブクラスとしてジェネリクスで親に知らせてやるのがかっこいい。S2JDBCに関して云えば、nameはおいといて、idに関しては、「hoge」ってテーブルのIDカラムは「hoge_id」じゃなくて「id」の方がいいみたい。@JoinColumn書かないと…

テーブルを削除した後にDBFlute

のjdbc.bat→generate.batしたら、削除したテーブルの分の関連クラスを削除してくれるオプションとかあるのかな。あったら嬉しいな♪事前にちゃんと設計しろと?だってだってお客様の云う事がころころと・・・・。あと、DB設計ツールからフォワードエンジニア…

idとかnameとか

HogeってテーブルのIDや名称のカラムに、「hoge_id」や「hoge_name」じゃなくて、「id」とか「name」って名前をつける流派がありますね。確かに、Hoge.hoge_idやHoge.hoge_nameよりHoge.idやHoge.nameの方が冗長でなくてかっこよく思えますが。S2に関しては…

teedaのcondition

がdivタグだけじゃなくてtbodyにも書けると、WTPのバリデーションのバッテンがなくなって嬉しいな。モヒカン対策。もう誰も云わないのかモヒカンて。それかtrに書くと、条件にマッチしない時にそのtrごとごっそり消えるとか。

で、

xxxBhvのモック化でclassextension使い始めると、実は素のTestCaseで事足りる事が多くなったりして、テストの起動が早くなったりしてこれまた。

DBFluteのnewMyEntityとか

newMyConditionBeanって、中で単にnewしてるだけなのでなぜこんなメソッドがって思ったら、EasyMockでテスト書きやすいじゃん、これはいいなあ。新規登録なんかでエンティティクラスをnewしたい場合、Bhvのモック使ってテスト側からnewして戻してやれば、そ…

teedaのFacesMessageでSEVERITY

が指定されたら出力されるタグの属性が切り替わってくれると嬉しいな〜(ぼそ)。画面遷移しないで、「正常に完了しました」ってメッセージだけ出すという要件があって。エラーの時と違うスタイルで出したいなあ〜と。今回はあたりさわりないスタイルなので…

DBFluteでPostgreSQLでserialだと

identity扱いになってしまうのね・・・・・。どうせアプリからしかinsertしないので、serialやめました。

ダウンロードキャンセルで例外

teedaで対応となっ!これは嬉しい。ファイルサイズが小さくても、ダウンロードしますかダイアログでキャンセルすると例外が投げられるんですよねぇ。ClientAbortExceptionはtomcatのクラスなのでつかまえられないし、かと云ってSocketExceptionを握りつぶす…

S2JMSというかJMSがわかっとらん

お試し出来ないので色々と考えるだけ考えてみたり。JMSどころか非同期処理が初めてなので素朴な疑問。WEBアプリ上で非同期処理を行いたいのが複数あったとして。その処理ごとに接続を作って(http://s2jms.seasar.org/ja/config-abstraction.htmlの「複数の…

Seasarでもああオラクル

MLで2.4.10以降とOracleで初回起動時に遅くなるって話が出てましたが。実はうちもなんで御座います。2ちゃんにも書き込みが。うーむ。今回はバッチ処理とその監視用Webアプリというちいさめ案件で、確かに体感出来るくらい遅いけど初回起動時だけだし、ユー…

上記の補足。

後半わかり難いかも知れないですね。データをタイル状に並べたいって話なんですよ。業務アプリとかではあまり要望はないんですが。動的にtrとtdを吐く場所をspanタグで指定するって感じですかね。やってみりゃいいじゃんって話なんだけど。

Teedaでループで横並び表示

てなわけで、カラム名をthタグの中に入れて横にならべて表示するんだけど、HTMLとしてちょっとなあということに。 <table border="1"> <tr> <div id="listHeaderItems"> <th><span id="headerTitle">カラム名</span></th> </div> </tr> (省略) </table>モヒカンな方に怒られそうだ。trタグのidに「xxxItems」が指定出来ると嬉しかったんだけど、流石にループしてくれな…

画面動的生成

ちょっと時間が空いたので、次期開発に備えて&&スタコン(オフィシャルな略称はスタカンじゃなかったようじゃ)でかぶれたので、DBスキーマから動的メンテ画面生成をTeedaでやってみようかなとあれこれ。検索機能なしの、全件表示一覧画面にまず着手。DBのテ…

S2ブートストラップ?

今回の案件で、WEBアプリのクラスを使ってバッチ起動でスタンドアローンプログラムを動かしたいなと思ったんだけど、起動するのにクラスパスだのなんだの大量のjarを書くのが面倒、かつ、事前処理、成功時処理、エラー時処理の3つあるのでjarが変わるたんび…

Teedaで動的に画像とか

TeedaってよりかJSFについてなのかも知れないけど、HTMLに表示する画像を動的に生成するにはどうすればいいんだろう。リソースが既にあって、それを動的に切り替えるのはDynamic Propertyで出来るんだけど、例えば入力された条件に沿ってデータを取得して、…

列挙ばんざい

ひがさん、コメント有難う御座います。こちらでお返事。なんと!しかもEntityからPageまで列挙でいけますか!列挙厨としては嬉しい限りです。しかし、そうなるとDxoのEnum変換の出番が激減・・・またwithout koichikという事態に・・・(すんません、云って…

TeedaのItemsSave

なんてナイスな素敵機能なんだ〜。と思ってたら、例の列挙厨であるあたくしの弊害が出てしまい。どうやらItemの中身のDtoに列挙が入ってるとデシリアライズ出来ないみたいでごわす。初期表示は出来てて、ちゃんとHTMLの中にずらずらーとリストの中身が出てる…

自前フォワード

あと、自前でログイン画面にフォワードすると色々怒られてしまい、responseCompleteしなきゃだめかと思ってそうしたら、遷移はするんだけどIllegalStatusなんちゃらとか例外が出て、悩む時間は無いのでリダイレクトした。メッセージとか別に出さなくていいし…

Teeda上で自前アノテーションが取れない(かも知れない)

仕事、だいぶん基本的な所は出来てきたので足回りにとりかかる。認証チェックとかそういうの。簡単な認証インターセプタを何時もどおりに作ってみた。今回は認証不要の画面(ログインとか)をアノテーションで指定して、アノテーションがあったら認証をスキ…

teedaで列挙でUIValueUtil

UIValueUtil#getValueAsStringの中に、 if(value instanceof LabelEnum){ System.out.println("UIValueUtilでラベル列挙だった。"); }else{ System.out.println("UIValueUtilでちがった。"); }なんてのを入れてみた。すると、HOT deployの場合、最初画面が表…

Teedaで列挙・4

現在動作テスト中で、Pageクラスのinitializeで上の例だとSendStatusをセットしてやってて、prerenderで型を確認すると、ちゃんとLabelEnumだと判定してます。その後Converterに渡った時点で、引数valueの中身は問題ないんだけど何故かLabelEnumでキャストし…

Teedaで列挙・3

どうやらConverterのgetAsStringでキャストでこけている。初期表示の場合はちゃんとLabelEnum扱いしてるんだけど、F5でリロードすると何故かClassCastExceptionになっちゃう。引数valueの中身はちゃんとしてるんだけど。HOT Deployで、コケた後にPageをちょ…

Teedaで列挙続き

成功、成功、ばんざーい、と思ったら、動かなかった。なんか動いたり動かなかったり。待てしばし。