Fusebox5 RC1リリース!?
Sean Corfieldが、CFUNITEDでFuseBox5 RC1をアナウンスするようです。
FuseBox5のXMLファイルをModel-Glue風にすることも可能なようですけど、いまさらFuseBoxは覚えたくないなあー。
Sean Corfieldが、CFUNITEDでFuseBox5 RC1をアナウンスするようです。
FuseBox5のXMLファイルをModel-Glue風にすることも可能なようですけど、いまさらFuseBoxは覚えたくないなあー。
Reactor1.0BC2がリリースされています。
ColdSpringと同様に、RoboHelpを使ってライブドキュメント化されています。
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へのforwardb.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を参照
Joe RinehartによるModel-Glue:Unityの最新プレゼンテーションがBreezeCentral.comにアップされました。
Model-Glue:Unityの新機能(scaffoldsやGDM)を実際に体験できるので、大変有用です。
最初にデモンストレートされる「15分でブログアプリケーション」がおもしろかったです。
1時間弱のプレゼンですが、こちらからどうぞ!
早速、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関連のパーミッションかもしれません。
Joe RinehartがAdobe's Developers Weekで実施したModel-Glue:Unityのプレゼン内容を、Brian Rinaldiが彼のブログで紹介しています。
彼のプレゼンは、まだAdobeサイトにアップされていないので、Brian RinaldのブログからModel-Glue:Unityの新機能を読み取ってみます。
1.Model-Glue1.1との完全下位互換
即ち、MVCアーキテクチャを使って、プレゼンテーションからモデル層を分離することがその目的であった。
しかしながら、beans/Records、DAOs、Gatewaysなどの共通タスクを取り扱う繰り返しのコードを生むことになった。
モデル層における単調な繰り返しコード生成作業を自動化する。
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
4.レコードデータのAutoValidation
最後に、Joe Rinehartのビデオデモも参考になるので、一読をお勧めします。
Joe Rinehartのブログで、ModelGlue:Unity Public Beta1のリリースがアナウンスされています。
ダウンロードサイトは、こちらです。また、ドキュメントは、こちらです。
私のCF-OOPサイトで、ドキュメントの意訳を行っていきますので、今しばらくお待ちを・・・
Joe Rinehartが彼のブログで、ModelGlu2.0:Unityを使う10の理由を書いている。
しばらく、ModelGlueやColdspringから遠ざかっているので、再度ModelGlue:Unity+Coldspring1.0RCを楽しんでみよう・・・(Reactor1.0RCも含めて)
Raymond Camdenのブログで、Coldfusion Cookbookの記事が100件を突破したことのアナウンスがありました。
Coldfusionに関する総合ポータルとして継続的にウォッチしていこうと思います。
RSS2.0のURLは、こちら。興味を引いたエントリーは、以下のとおりです。
以前の記事でサイトのスクリーンショットを作成してくれるUSのサービスを紹介しました。
日本でも、はてなスクリーンショットサービスとして、サムネイルを提供する動きがでてきたので、ググッってみました。
ウェブサイトサムネイル作成API
開発者のブログは、こちらです。
このブログのサムネイルは、こんな感じになります。
最近のコメント