CodeZine(コードジン)

特集ページ一覧

はじめて使うProject Zero

渋谷テクニカルナイト講師陣が語る新技術動向 第6回

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2009/03/09 14:00

目次

Application Builderの起動

 続いて、Webブラウザーベースの開発環境であるApplication Builder(以下、AppBuilder)を起動します。AppBuilderはそれ自身がsMashで開発されたWebアプリケーションであり、初回起動時にリモート・リポジトリーから自動的にダウンロードされてセットアップされます。AppBuilderの実行にはFirefoxが必要ですので、事前にインストールしておいてください。Firefoxは、mozillaのWebサイトからダウンロードできます。

 Application Builderは、コマンドプロンプト(シェル)から「appbuilder open」を実行すれば起動できます(全てのモジュールのダウンロードには数分かかりますので、コーヒーでも飲んで一服しながら待ちましょう)。モジュールのダウンロードが完了すると、Firefoxが自動的に開き、AppBuilderの初期画面が表示されます。

 AppBuilderはWebブラウザーを閉じただけでは終了しないので、終了する際にはコマンドプロンプト(シェル)から「appbuilder stop」を実行してください。

RESTサービスの開発

 Project Zeroでは、Zero Resource Model(ZRM)という仕組みを提供しています。ZRMを利用すると、リソースの項目定義を行うだけで、DBに対するテーブルの作成やデータのCRUDを行うためのSQLの発行、RESTサービスのハンドラー実装を自動化することができ、定型的なコーディングを大幅に削減することが可能です。

 ここでは、AppBuliderを利用してZRMによるRESTサービスを実装してみましょう。RDBMSは、Project Zeroがデフォルトで対応しているApache Derbyを利用します。

 リソースの項目は次の通りです。

項目名 タイプ 備考
title String(MaxLength:50)  
author String(MaxLength:50)  
publisher String(MaxLength:50)  
category String(MaxLength:50)  
id Integer プライマリー・キー
※自動的に追加される
updated DateTime ※自動的に追加される

 AppBuilderのスタート画面で[Create new application]をクリックします。

 アプリケーションの基本情報を入力する画面が表示されるので、以下のように入力し、[Create]ボタンを押します。

  • Application name : BookApp
  • Root directory : (任意の空ディレクトリ)

 以下のように表示されれば、アプリケーションの新規作成は完了です。

 アプリケーション一覧から[BookApp]をクリックしてアプリケーションを開くと、File Editorに切り替わります。

 リソースの項目定義は、モデル・ファイルと呼ばれるJSON形式のテキストファイルとして作成します。モデル・ファイルはテキストエディタで直接作成することもできますが、今回はAppBuilderのモデル・エディターを利用して作成します。

 File Editorで、[New File]-[Zero Resource Model in /app/models]-[New Model]を選択します。

 「File Create」ダイアログで、ファイル名を「/app/models/books.json」とし、[Create]を押します。

 ZRM(Zero Resource Model)を扱うためのモジュールが依存モジュールとして定義されていないため、追加を促すダイアログが表示されるので、[Add]をクリックします。この操作により、依存モジュールの定義ファイル(config/ivy.xml)が自動的に修正されます。

 モデル・エディターが開きます。この時点では、モデル・ファイルは空です。

 [String]をクリックすると、文字列型の項目が追加されます。

 プロパティ設定ボタン(×ボタンの左)をクリックすると、設定画面が開きます。ここでは「name」を「title」に変更し、それ以外はデフォルト設定のままとします。

 同様にして、文字列型の項目を3つ追加し、「name」を「author」「publisher」「category」とします。

 [Source]タブをクリックすると、モデル・ファイルのソース(JSON形式)が確認できます。


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 須江 信洋(スエ ノブヒロ)

    日本アイ・ビー・エム ソフトウェア事業にてWebSphere関連製品のプリセールスを担当しつつ、これから「来そうな」技術をウォッチしています。Project ZeroがきっかけでGroovyにハマり、最近はGroovyの布教活動を進めています。『プログラミングGROOVY』(技術評論社刊)もよろしく...

バックナンバー

連載:渋谷テクニカルナイト講師陣が語る新技術動向

もっと読む

All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5