2006-01-01から1年間の記事一覧

Control 例

以下のような実装をしたとします。 public HomePage() { ActionButton actionButton = new ActionButton("button","buttonLabel"); actionButton.setListener(this, "onButtonClick"); addControl(actionButton); } public boolean onButtonClick() { System…

Control

画面側で発生したイベントをサーバ側で取得する仕組みです。 以下のようなシーケンス図(http://click.sourceforge.net/images/control-post-sequence-diagram.png) Controlは以下のインターフェースを実装する(http://click.sourceforge.net/images/contr…

Page Message Properties

Pageクラスは、messagesというプロパティを持っていて、これまた、画面に表示することが出来る。 以下は、titleというプロパティを表示する例 $messages.title このmessagesは以下の場所からLoadされる。 PageScopeMessages この場合、Pageクラスがcom.mycor…

Page エラーハンドリング

例外のハンドリングについては、 デフォルトで用意されている。 実際には定義されてはいないが、以下の指定がされているのと同等である。 <page path="click/error.htm" classname="net.sf.click.util.ErrorPage"/>独自実装がしたい場合には、clickサブディレクトリの下に、error.htmを作成し、 <page path="click/error.htm" classname="com.mycorp.page.ErrorPage"/>のように、独自の例外Pageを作成する。</page></page>…

Page PageTemplating

StrutsのtilesのようにTemplateを使用することが出来る。 テンプレートPageの作成 まずは、templateとなるクラスを、Pageを継承して作成 public class BorderedPage extends Page { /** * @see Page#getTemplate() */ public String getTemplate() { return …

Page 画面遷移

forwardの場合 _/** * @see Page#onPost() */ public void onPost() { // Process form post .. setForward("index.htm"); } このようにすると、遷移先の新しいPageインスタンスを使用する。遷移先のPageのコントロールは実行されない。(?) 値の引継ぎ 方…

Page の method

onInit() onSecurityCheck() onGet() onPost() onRender() onDestroy() 以下のようなシーケンス図(http://click.sourceforge.net/images/get-sequence-diagram.png) onInit() FrameWorkがいろいろした後に初期化処理として利用 onSecurityCheck() 認証など…

Page セキュリティ

onSecurityCheckメソッドが用意され、securityの拡張ポイントがある。 実際のコードは用意してあるものを利用すればよい。 Application Authentication ログインページで、認証を行い、成功した場合はsessionを作成するアプリケーションがあるとする。ログイ…

Page その1

画面に対して、Pageを継承したクラスを用意する。 こんなクラス図。(http://click.sourceforge.net/images/click-class-diagram.png) Contextオブジェクトには、コンテキスト情報が含まれている。requestやらsessionやらを使用したい場合などに使用する。 …

ClickFrameWork

http://click.sourceforge.net/ Page駆動のFrameWork 設定ファイルとして、click.xmlをweb.xmlと同じ場所に配置。 <page path="search.htm" classname="com.mycorp.page.Search"/>こんな感じの記述</page>

Page駆動

SeasarをDIとしてではなく、teedaを中心に調べてたわけだけど・・・ (ってなんかおかしいな・・・文章・・・粒度が違うというか比べられるわけないけど)Page駆動ってのは流行だし、わかりやすいし、 がんばればかなりオブジェクティブかな〜と思う。ただ、…

価格.com API + Relaxer

http://apiblog.kakaku.com/KakakuItemSearchV1.0.html 価格.comでもAPIが公開されました。 以前YahooJapanAPIの時は、JaxMeなどでマッピングしたけど、 今度はrelaxerを使用してみようということで実験 Relaxer1.1はインストール済みで、 RELAX_HOMEが環境…

radio

radioが動いた〜新しくなったteeda-html-exampleにのけったら動きました。ポイントはcolorItemsというColorの配列と colorという選択保持用のフィールド ほぼ流用・・・ <span id="color"> <input type="radio" name="color" value="0" checked="checked"/>aaa <input type="radio" name="color" value="1"/>bbb <input type="radio" name="color" value="2"/>ccc </span>Colorクラスは p…

掲示板

teeda-extensionを使っての掲示板はとりあえず保留。 普通に作ります。 というか作ったら出来ました。・・・終了!?なんか他のも作ります。

S2Dao

s2-dao-1.0.35.jar mysql-connector-java-3.1.8-bin.jar jta.jar jdbc.dicon dao.dicon を追加。 (あと当然テスト用のdiconも)dao.diconは、古いのをもってきたらNullPointerでテスト失敗。ちゃんと s2daoのサンプルからもってきたら通りました。 当然、jd…

先日までのまとめと今後

先日までの問題点 DxoのNoSuchMethodError radioボタンの表示が出来ない点について 投稿記事一覧を、entity.Articleのリストにするか、ArticlePageのリストにするか、表示用にVOを作るか 1については、まぁ保留。とりあえずBeanUtilsでも使用しておく rootPa…

radioボタンが・・・・

radioが表示されません。。。 サンプルも。。。 なぜ?? というわけでとりあえずは色の選択はSELECTで対応

Teeda-extension はまった・・・

実行したいメソッド名はdoから始めること。 (これも勘違い。実行したいメソッドがxxxxだったら、doXxxxにするのかと思ってた・・・ぐはぁ)直したらとりあえず、実行された。 以下のような構成hoge.mokkouyou.bbs dxo.ArticleDxo web.article.ArticleAction…

viewRootPath

なんか全体を見通せてないので、なんの話になってるのか自分でも どのプロダクトに焦点当てていいのかわかりませんが、 とりあえず、 htmlに関してはviewフォルダ固定です。 setterがあるから、指定できるんでしょうけど、 とりあえず、viewでも困らないので…

Seasar2.4 パッケージ捕捉

さて、昨日の日記の追記です。 ひがさんにアドバイスをいただきましたので、 まずは確実であろうteeda-html-exampleの方で確認してみました。teeda-html-example に対して、以下の変更を加えてみました。 Add2Page->Add2Dtoexamples.teeda.web.add.Add2Actio…

teeda-html-exampleリリース

されました。 SVNの方にアクセスできない人は試してみると感動すると思います。 (SVNではrc2とかに更新されてましたが・・・)

S2Unit app.dicon

勝手にapp.diconは勝手に読み込まれるかと思ってたけどそんなことは無かったです。 大きな勘違い。 さて。。。 http://www.seasar.org/S2Unit.html にも確かにsetUpがapp.diconの役目をと書いてある。 なるへそ・・・となるとテストのたびにdiconが多いなぁ…

掲示板を作るその4 Dxo!

HotdeployがらみではDxoがあったんだけど、 日刊きむきむちゃんねる みたいなInterceptorは無かったので、 別途S2Dxoを取り込む。 さてとなると・・・テストが必要なので、 S2Unitの方に取り掛かります。1から勉強!ちなみに設定は <include path="s2dxo.dicon"/> 中略 <component class="org.seasar.framework.container.autoregister.AspectAutoRegister" > <property name="interceptor">s2dxo.s2DxoIntere</property></component></include>…

掲示板つくるその3 がんばってHOTdeploy・・・断念

hoge.mokkouyou.bbs.web.BbsRegistAction hoge.mokkouyou.bbs.web.impl.BbsRegistActionImpl を作成 s2bbs-hotdeploy.dicon <components> </components>

掲示板を作るその2

プレビューで問題なかったHTMLをAPサーバ乗っけてアクセスしたら以下の例外発生・・・java.lang.IllegalArgumentException: javax.faces.component.html.HtmlSelectOneRadio at org.seasar.jsf.util.UIComponentUtil.findParent(UIComponentUtil.java:47) at…

寄り道〜teeda-html-example

addがいっぱい。でもすごい。 ピュアでここまでするか〜って感じでした。 昨日hotdeploy-exampleの方で、DTOを持たせたらDIされなくて、NullPointerだったけど、 XXPageだとうまくいくようです。(今日も駄目同一パッケと、dtoパッケで確認) public class A…

HOT / COOL deploy ?

HOT deploy UTとかでちょこちょことソースを変えて反映したい時に、 必要なタイミング(アクセス時とか?)にコンポーネントのリロード COOL deploy UT以降そんなソースは変えないよって時に、 起動時にコンポーネントのロード (結局は自動登録の事ですね、…

掲示板を作るその1

せっかくなのでBBSを作ります。 多分何かを作れば昨日の疑問点を 解決できるであろうと信じて・・・ 機能 記事を・投稿する 記事を・削除する 記事を・閲覧する以上 さて、 とりあえず、 S2JSF Blank 1.1.0 Beta3 をサイトからダウンロードして 展開。 フォ…

とりあえずSeasarはじめました

そしてはてなも。 よくわからん。理由はとっついてみて面白かったから。とりあえず、ひがやすを blogを読んでみて、 hotdeployのサンプルを動かしてみる。 おおすげー (といいますか本気ですごいです。)んでいつもの如くまぁじゃぁいじってみるかと。 まず…