JSF+AjaxでUIコンポーネント開発 with Shale Remoting (1)

最近のWebアプリケーションの開発(特にスクラッチから作れる案件)では,AjaxによるWeb2.0的なユーザインタフェースを採用することがほとんどではないだろうか。HTMLの標準フォーム部品に加えて,JavaScriptと非同期通信を使ったWebブラウザ上でのインタラクティブな動作が好まれるようになった。逆に言うと,実装者にとっては,例えばJSPを使ってHTMLを組み立てるだけではなく,JavaScriptまで面倒をみないといけなくなる…

続きを読む →

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (2)

「 [JSF+AjaxでUIコンポーネント開発 with Shale Remoting (1)](http://www.eisbahn.jp/yoichiro/2006/11/jsfajaxuiwithshaleremoting.html)」で予告した通り,さっそく作成するコンポーネントはどういったものかを紹介しよう。コンポーネントの内部動作を把握できれば目的達成なので,最低限かつ再利用可能な機能とする。 題して「DoubleSelec…

続きを読む →

錆びないもの

久々に突然,THE YELLOW MONKEYの「JAM」が聴きたくなって,プロモ流しながら自分の部屋で思わず熱唱。 いい曲だ。初めて聴いたときの印象と変わらずにいつも聴くことができる,数少ない曲の一つである。…

続きを読む →

Children = Kids?

コンポジットなオブジェクトの構造を辿るときに必ずと言っていいほど見られるメソッド,getChildren()。これを変数で受けるとき,あなたなら変数名をどう命名するだろうか? Hoge hoge = ...; Collection children = hoge.getChildren(); まぁこれが多数派だろう。僕も今までこうしてた。しかし,JavaServer FacesのSun RIは違った。 Hoge hoge = ..…

続きを読む →

GlassFishがちょっぴり身近になるらしい

Redhat Linuxの牙城を崩すつもりでいる(だろうと思われる)Canonicalが,Ubuntu(うぶんちゅ?)ディストリビューションにGlassFishをバンドルすることを決定した。 「 [Ubuntu maker to distribute Sun's Java](http://news.com.com/Ubuntu+maker+to+distribute+Suns+Java/2110-73443-6133411.html?t…

続きを読む →

全ジョブへの共通情報の渡し方

[Quartz](http://www.opensymphony.com/quartz/)によってジョブ(Jobインタフェースの実装オブジェクト)が実行される場合,JobオブジェクトにJobExecutionContextオブジェクトが渡される。これは,サーブレットのServletContextオブジェクトと同様に,実行対象のJobオブジェクトの状況(まさにコンテキスト)の情報が保持されている。 各ジョブのSchedulerへの登録は,…

続きを読む →

ついにモバイル環境を我が手に取り戻せるのか!?

「 [MacBook Proのモバイル通信に救いの手が](http://kazu-style.com/blog/2006/10/24/1161686340000.html)」- :::kazu-style.com::: やったぁ!久しく1パケットも通信せずに料金だけしっかり払い続けてきたモバイル環境が,僕の手に戻ってきそうだ。Macbook Proを買ってから半年以上,いやぁ,長かった。 でも,もう長期出張,終わっちゃったんだよなぁ。。…

続きを読む →

実装者を職人にするために

COBOL全盛の時代は,1つのメーカによる統一的な「閉じた」アーキテクチャだったために,ロックされたベンダーが提供する技術情報を身に付けるだけで,多くの案件をこなすことができた。それに,COBOLをやったことのある人ならわかると思うが,OSやデータベースなどによって提供されるサービス(トランザクションモニタやロギングなど)は非常に手厚く,しかも個々のプログラムで全く意識する必要はなかった。1プログラマから考えたら,COBOL全盛時代の方…

続きを読む →

Quartzでのジョブ重複起動の抑止方法

バッチ処理に欠かすことのできないジョブスケジューラ。特にJavaの場合は,JavaVMというプロセス自体が重厚なために,個々のバッチプログラムをそれぞれJavaVMプロセス起動で実行することは,バッチプログラムの本数が多くなればなるほど非現実的になる。そのために,一つのJavaVM上でのジョブスケジューリングが基本となり,つまり各バッチ処理をプロセスとしてではなく,スレッドとして実行する基盤が欲しくなってくる。 スレッドを使用したことの…

続きを読む →

Teeda - 日本発JSF実装

「 [今の最適解とは何だろう?](http://www.eisbahn.jp/yoichiro/2006/11/post106.html)」というエントリにコメントを寄せて頂いた中で,「Teedaは近いんじゃん?」という意見を頂いた。存在は知っていたけど,単なるJSFの1実装に過ぎないという軽い認識しか持ってなかったので,改めてSeasar FoundationのページでTeedaとは何かを見てみた。 「 [Teeda - JSF me…

続きを読む →