フォトアルバム

2009年7月

      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

なかのひと

アンケート

  • Do you Like?
    アンケート
    どのColdfusion用フレームワークが好き?
    ModelGlue:Unity
    ModelGLue
    Mach-II
    FuseBox
    LiteWire
    OnTap
    ColdBox
    OnAir
    cfWheels
    CFRails

    [PR]アンログ.jp 自動車保険

373news.com

想ひ出

  • Dvc00050
    携帯で撮った写真をアルバムにしています。

サムネイル

  • CF-OOP









  • ganymean.org









  • シナプス

Google Analytics

« 2006年5月 | メイン | 2006年7月 »

Fusebox5 RC1リリース!?

Sean Corfieldが、CFUNITEDでFuseBox5 RC1をアナウンスするようです。
FuseBox5のXMLファイルをModel-Glue風にすることも可能なようですけど、いまさらFuseBoxは覚えたくないなあー。

Reactor 1.0BC2リリース!

Reactor1.0BC2がリリースされています。
ColdSpringと同様に、RoboHelpを使ってライブドキュメント化されています。

ColdSpring 1.0リリース!

ColdSpringの1.0がリリースされました。
ドキュメントもRoboHelpバージョンでライブドキュメントになっています。
Model-Glue:UnityでBeanFactory機能は体感しているものの、AOPやサービスマネージメントを積極的に試していきたいものです。

Model-Glue:Unity Scaffolding

Sean Corfieldのサンプルアプリケーションggcc11を通じて、Model-Glue:UnityのScaffolding機能を含めた「15分で作るWebアプリケーション」の作成手順を体感しつつあります。

しかしながら、私のローカルマシンやHostNexusホスティングで完璧に動作していません。
Model-Glueメーリングリストでも私と同様のエラー発生が報告されているので、ベータ2までには解決するだろうと思います。
Seanが記述してくれたGGCC11作成体験記を意訳してみたので、ご参考までに。
詳細は、添付ファイルをご確認ください。

1.modelglueapplicationtemplateを雛形にして、ANT適用

a. modelglueapplicationtemplate内のbuild.xmlファイルを開き、
b. <property>タグのtarget属性のvalue値に、"ggcc11"へのフルパスを設定し、
c. <replace>タグのtoken属性のvalue値に"ggcc11"を設定する。 

2.Reactor.xmlファイル

a.データベースオブジェクトの定義
b.リレーションの定義

3.ModelGlue.xmlファイル

a.scaffoldタグの追加
   note
   task

    <event-handlers>
        <scaffold object="note" />
        <scaffold object="task" />
    </event-handlers>

4.アプリケーションの実行

http://[host]/ggcc11/

5.自動生成ファイルの確認と移動

a.viewファイル(確認と移動)
  VIEW(cfm) :/ggcc11/config/scaffolds/dsptaskList.cfm   ---> /ggcc11/views/
                                       frmtask.cfm       ---> /ggcc11/views/
b.modelファイル(確認のみ)
  MODEL(cfc):/ggcc11/model/data/

6.Scaffolds.xmlファイル内容をModelGlue.xmlファイルにコピー

コピー元:/ggcc11/config/scaffolds/Scaffolds.xml 

<event-handler>タグ  task.list, task.edit, task.commit, note.commit

コピー先:/gggcc11/config/ModelGlue.xml          

<event-handlers>タグ

7.<event-handler>タグへの追記

a.task.commit用<event-handler>
   note.commitへのforward

b.note.commit用<event-handler>
   task.editへのredirect

8.controllerへのリスナーメソッドの追記

getQueryStruct()メソッド

9.ModelGlue.xmlの修正

a.メッセージリスナーの登録
    <message-listener message="makeLookupFromQuery" function="getQueryAsStruct" />
b.task.list<event-handler>へのメッセージ追加
    <message name="makeLookupFromQuery">
         <argument name="queryName" value="statusQuery" />
         <argument name="lookupName" value="statusLookup" />
         <argument name="key" value="statusId" />
         <argument name="value" value="statusName" />
    </message>
    <message name="makeLookupFromQuery">
         <argument name="queryName" value="userQuery" />
         <argument name="lookupName" value="userLookup" />
         <argument name="key" value="userId" />
         <argument name="value" value="firstName" />
    </message>

10.dsptaskList.cfmの修正

 HTMLの整形:status、username、最終更新月日 

11.frmtask.cfmへの追記

 a.validationError時の対応
    <cfmodule template="customtags/validationErrors.cfm" property="ownerID" validation="#validation#" />
b.その他

12.未達成事項

a.note書き込み時のセキュリティチェック
   ggcc7を参照

Model-Glue:Unity 最新プレゼンテーション

Joe RinehartによるModel-Glue:Unityの最新プレゼンテーションがBreezeCentral.comにアップされました。
Model-Glue:Unityの新機能(scaffoldsやGDM)を実際に体験できるので、大変有用です。

最初にデモンストレートされる「15分でブログアプリケーション」がおもしろかったです。

1時間弱のプレゼンですが、こちらからどうぞ!

Model-Glue:Unityサンプルアプリ

早速、Sean Corfieldが彼のブログでModel-Glue:Unity対応のサンプルアプリケーションggcc11をアップした。
このサンプルアプリケーションは、彼がFuseBox、Mach-II、Model-Glue、ColdSpring、TartanなどColdfusion向けFramework Sample Code、ggccシリーズの最新版です。
Model-Glue:Unityによって、

プレゼンテーション層:ModelGlue:Unity
コントローラー:ModelGlue:Unity(ビジネスロジック)
サービス層:ColdSpring
ORM層:Reactor

と各々のフレームワークが相当の機能を分担したため、今回Sean自身が書いたものは、プレゼンテーション層であるviewと、ビジネスロジック層のcontroller.cfcだけになっています。
私のホスティング環境では、エラーが発生しています。Reactor関連のパーミッションかもしれません。



Model-Glue:Unityの新機能

Joe RinehartがAdobe's Developers Weekで実施したModel-Glue:Unityのプレゼン内容を、Brian Rinaldiが彼のブログで紹介しています。

彼のプレゼンは、まだAdobeサイトにアップされていないので、Brian RinaldのブログからModel-Glue:Unityの新機能を読み取ってみます。

1.Model-Glue1.1との完全下位互換

  • Model-Glue1.1は、第二世代のフレームワークである。

即ち、MVCアーキテクチャを使って、プレゼンテーションからモデル層を分離することがその目的であった。
しかしながら、beans/Records、DAOs、Gatewaysなどの共通タスクを取り扱う繰り返しのコードを生むことになった。

  • Model-Glue:Unityは、第三世代のフレームワークである。

モデル層における単調な繰り返しコード生成作業を自動化する。

2.他のフレームワークとの統合

  • 第三世代フレームワーク化推進のため、他のフレームワークとの統合を図った。

ColdSpring
サードバーティサービスの統合と依存性の注入(DI/IoC)をの実現。
依存性の注入は、Model-GlueとReactorのコンフィグ情報をColdSpring.xmlに記述することで実現。
Reactor
ORMの自動化に、Reactorを採用。
ModelGlue自身が実装したData Controllerを使って、イベントハンドラー内の<message>タグでGDMと呼ぶメッセージを記述して、DAOやGatewayを呼び出す。

  • ModelGLue.GenericList(Gateway)
  • ModelGLue.GenericRead(Read)
  • ModelGLue.GenericCommit(Create&Update)
  • ModelGLue.GenericDelete(Delete)

ORM用フレームワークには、Reactor以外も利用可能であるが、自分自身でcustom adapter, DataController, 及びscaffold .XSL を作成する必要がある。

     

3.Scaffolding

  • XSLによるカスタマイズ可能なHTMLの "scaffolds(足場)"を実現。
  • ModelGlue.xml内の<event-handlers>タグ内に<scaffold>タグを定義すれば良い。
  • <Scaffold>タグにより、5つのイベントを作成可能。
    • マスターリストの表示(table.list)
    • レコードデータとリレーションデータの修正フォームの表示(table.edit)
    • レコードデータの読み出し専用ビューの表示(table.view)
    • レコードデータの更新(table.commit)
    • レコードデータの削除(table.delete)
  • <Scaffold>タグ内には、<Broadcasts>、<Results>、<Views>タグを記述可能。
  • <Scaffold>タグの属性に、typeを指定することで、作成するイベントハンドラータイプを指定可能。

4.レコードデータのAutoValidation

  • GDMのGeneric.Commitで、<arguments>タグにname="validationName"を指定することにより、自動的にValidateを実行できます。(より複雑なValidateのカスタマイズは、Reactorが自動生成するDAOオブジェクトを拡張する必要がありますが・・・)

最後に、Joe Rinehartのビデオデモも参考になるので、一読をお勧めします。

ModelGlue:Unity Public Beta1リリース!

Joe Rinehartのブログで、ModelGlue:Unity Public Beta1のリリースがアナウンスされています。
ダウンロードサイトは、こちらです。また、ドキュメントは、こちらです。

私のCF-OOPサイトで、ドキュメントの意訳を行っていきますので、今しばらくお待ちを・・・

ModelGlu2.0:Unityを使う10の理由

Joe Rinehartが彼のブログで、ModelGlu2.0:Unityを使う10の理由を書いている。

  1. Expression over depression. UI関連作業を大幅に削減できること
  2. Near-instant applications. かんたんにアプリケーションが構築できること
  3. MVC without the guesswork. 明快なMVCであること
  4. It does CRUD for you. CRUD機能を提供すること
  5. It makes OOP easier to learn. OOPを簡単に学べること
  6. Already got CFC code? Reuse it effortlessly. CFCの再利用を高められること
  7. Don't like something? You can change it. フレームワークの機能拡張性が高いこと
  8. It's fast. 高速であること(旧版と比較して)
  9. It's free. 無料であること
  10. It's open source. オープンソースであること

しばらく、ModelGlueやColdspringから遠ざかっているので、再度ModelGlue:Unity+Coldspring1.0RCを楽しんでみよう・・・(Reactor1.0RCも含めて)

ColdfusionCookbook

Raymond Camdenのブログで、Coldfusion Cookbookの記事が100件を突破したことのアナウンスがありました。
Coldfusionに関する総合ポータルとして継続的にウォッチしていこうと思います。
RSS2.0のURLは、こちら。興味を引いたエントリーは、以下のとおりです。

How do I perform an XSLT transform?

ウェブサイトサムネイル作成API

以前の記事でサイトのスクリーンショットを作成してくれるUSのサービスを紹介しました。
日本でも、はてなスクリーンショットサービスとして、サムネイルを提供する動きがでてきたので、ググッってみました。

ウェブサイトサムネイル作成API
開発者のブログは、こちらです。

このブログのサムネイルは、こんな感じになります。

ログイン

  • コントロールパネルへのログイン
    アカウント:

    パスワード:

PR情報

  • [[PR]]
  • おすすめバナー

更新ブログ

google Search

  • Google
    blog.ganymean.org
    WWW

最近のトラックバック

Google

SHINOBI

Blog powered by TypePad
Member since 04/2005